I've tried FlexT9 and Swype. Both are pretty good vis-a-vis swyping functionality, but FlexT9 is better at learning, and worse at handling punctuation and capitalization. FlexT9 also has good voice input, though I seldom used it. Swype has the editing layer (select text,select all,arrows,delete key, etc.), which I use all the time, and it is easier to edit mistakes with Swype entry.
So I use Swype, but would go back to FlexT9 if it improved its editing capabilities.