It really depends on what game you want to make. I think the engine is more important than the language. There are games made in everything from Flash to Java to C# and C++ and even Basic( I learnt I don't like programming with Basic many years ago) so its whatever language you know, and have access to.
The engine will decide most of that. If I was making a game, just to make it to learn, and was going for an FPS I would use
UDK. Which is Unreal Development Kit, and it uses Unreal Engine 3. Thats because I come from more the art asset space than programming. It also has good tutorials and examples.
Now if I was making a game, and was looking to sell it down the line and graphics fidelity were a priority I would use
Unity Same as UDK, its very easy to make and import art assests in. There is also good tutorials out there, even Digital Tutors(These guys are great at tutorials!!) have a set here
http://www.digitaltutors.com/11/learnin ... hp?lpid=38Unity uses 3 languages - Javascript, C# and Boo scripts and its got a lot of examples. Cognition that was sold here was built with it, as was Dungeonland, Endless Space. There is a free version to learn with and to mock up, and then the PRO version costs $1,500 with add ons for IOS and Andriod and Flash costing aswell. You can also buy assests to bolt into your game, that you can learn from or use to get that polished look for reasonable price.
If you want to make a story based RPG, and are handy enough at drawing,
RPGmaker is your best bet. Its used in a lot of decent RPGs, but the style is very much set and you need to buy it for the full experience, but it only costs $69.99 so its not too much.
There is also
Game Maker which is free, and very good at making casual games and quickly but you will need to buy it for $49.99 to get games that can be played from it. The free version only lets you export test versions. The problem with this is that it uses its only language and scripting, and while the practises will travel, not all the language will, so if you wanted to delve deeper into game programming you would need to learn again.
Then on the other side if code scares you, there is
Blender which appartenyly has a game enginge part, its new to me. Blender is a great open source modelling suite which integrates with its own code base.
I think the big question is what game do YOU want to make? I would go with unity myself, because of the amount of training and examples, also the community is meant to be nice. I have no idea on the others for community. UDK will give you a glimpse of a big studio, but it can be hard to work in.