Flash isn't THAT bad for games... true, it will give people the idea that they have more power than they do, and it has its limitations... but at least it allows a newbie to program SOMETHING tangible within months, and it might not be a bad place to start to learn some fundamentals (like collision detection, etc.) which can be applied later. "Flash MX Actionscript for Fun & Games" is a good book to start with. Of course, you have to pay $$$$$ for the interface. The price of Flash just keeps increasing version by version. An old version can probably be bought cheaply via online auction, though.
Flying into C or C# or C++ will probably just be frustrating if what you want to do is just program a game to start out with. C++ has a MASSIVE learning curve, especially for gaming. It's probably best to go simple at first, then work your way up into more and more complex things. It takes a lotta time. Remember too that most modern 3D world-type games have teams of programmers working on them. One programmer doing all the work would take years to crank out something really sophisticated.