From my limited programming experience so far;

To learn programming basics, Python is an excellent place to start. The development environment is great and it is extremely easy to follow. I knew I had programming classes coming up, so I figured I'd get a head start and found Python. You can learn GUI programming quicker in VB, but I don't know enough C++ or VB to form any other opinions.

One more point I'd like to make is the syntax is only half of the equation. You also need to learn good programming practices. Once you know those, New languages are easy to learn, they just have different words to do the same thing.

-----------------------------------------------------------------------------------
End thread hijack

To learn C++, we used An Introduction to Programming with C++, Second Edition by Diane Zak. It is repetetive (ex. "you can take a break or continue with the next lesson" at the end of every lesson) but well written and understandable. It starts with the basics and in general teaches how to program as well as the syntax.