Originally posted by AsianInvasion
Anything but Visual Basic!
I'd recommend C++ if you have some experience, its not hard to create GUIs (there's a variety of kits) and it gives you a lot more power over your machine. C# is good if you're newer to programming.
C# is awesome. Have to add to what you are saying.
If you are completely new to programming and want to get an idea then VB.Net is a great start.
If you already have some experience or an idea but want to get a better understanding of things, C# is the way to go.
If you are experienced already with coding and want to get in more major application building and such C++ is the way to go.
I'm in the middle of learning C#, as I get better and better at it and finish a couple books that will teach me more about everything and how it does and doesn't work then I will make a shift to C++.