I'm not an expert in Naturally Speaking, or any other voice recognition software, but I've used it, and it's pretty impressive. You have to train it a bit, so it learns to recognize your particular inflections and pronunciations, but the documentation will guide you through that easily. I don't think it's much good for expressing really complex ideas that require specialized terminology, nor do I think it'll ever perfectly recognize every word you speak, you'll always have to edit the text it produces. If you say something like "2-4 D" for instance, it might produce "two four dee." and question the dee, because it isn't a word. Or it might produce "two four D," I dunno. I haven't used the most recent version of it, it was a few years ago that I tried it out, and I found it worked much more accurately if I paused slightly between each word, but that's a very awkward and unnatural way to speak, and surprisingly tiring.
And you have to be careful. When the microphone's on, it'll record everything you say, so if you mess up a sentence and mutter "aw sh*t" it'll put that down too. My personal preference is to avoid such things, but I'm a 10-finger touch typist and can do 80 words a minute, so voice recognition software is pretty much useless to me. I don't need it. My personal opinion is that you'd do better to develop your typing skills. But there's a bit of the Luddite about me, despite a career that required much use of computers and related technology. Just because we can make a machine do something doesn't mean it's a good idea, and what I've seen of voice recognition software suggests it's one of the things that aren't good ideas yet. Until we've got machines smart enough to understand natural human languages, and I think we're a long way from there, this idea isn't going to work very well for anything but the simplest compositions.