Yeah TTS (Text to Speech) is easy, especially in Windows.
Open Notepad and type in the following:
message="My Message Goes Here in Quotes"
Set sapi=CreateObject("sapi.spvoice")
sapi.Speak message
Save as a .vbs file and run it. You can open in notepad and change the text in quotes to anything you like. You can also see how "message" is just a variable, this could be part of a much more complex program pretty easily.
For dictation, you can find simple tutorials on YouTube on using built-in libraries in the .net framework via C#.
To delve into that, download "Visual Studio Community 2015" free from microsoft. It's a fun beginner programming lesson. The down side is having to dictate audio with multiple speakers, different accents, voice volumes. By the time you've cleaned up the audio enough and corrected the dictation errors, you could have typed it six times over, lol. The technology is getting there (Google is getting very good at it), but we're still a few years out before transcriptionists can be replaced by software.