I'd recommend C++ for desktop PC programming. It's pretty much the standard as far as programming languages go.
Personaly, I dislike Visual Basic. It always seems a bit vague.
C# (pronounced "See Sharp") is Microsofts new language that combines the easy GUI design from VB, and garbage collection from JAVA, with C++ syntax. It still seems a bit qwerky though.
If you can afford Microsoft Visual Studio you get VB, C++ and C#. Its a bit of a learning curve but they are good tools.
If you can't afford that take a look at the Eclipse design environment which supports C++ and JAVA among other things. It's free.
All High level languages are fairly similar. Once you know one its fairly easy to pick up others.
If you are looking at languages for programming microcontrollers C and assembly are the only common ones.