Really depends on what ya wanna do. I've just about done with an information extraction system that uses speech recognition. Did it for a friend - his 8th semester project. hought I was gonna aid him with technical bits re: speech recognition only, but I ended up reading all the theory, doing all the code and now I am about to meet him to help him do the documentation(!).
Anyway, ViaVoice is quite powerful. Used that with Java Speech Grammar thingy. Really neat coz you can do it the easy way and match to just one specific person and specific phrases, or define phonemes and all that and get a generic speech recognition component. The latter is a lot more work but it's not that hard once one has read up on speech theory.
Try ViaVoice. I've had good success with it, even speaking at normal rate. You can download a free version and try it out.