Many introductory C++ programming books try to stay platform/compiler independent. So you are left figuring out your IDE on your own. Or worse yet, if you don't have an IDE then you will have to figure out how to build on the command line...ouch! Okay, I admit I tinker around with gcc but only for fun of it.;P I use VS .NET Pro 2003. Whether you use the .NET framework or not, in my opinion, this is a major improvement over the VC 6.0 for several reasons. Its compliance with the ISO/ANSI C++ Standard is just shy of 100%. Improved Intellisense. Improved debugger. Improved class browser (includes base classes, marcros, message maps). Improved IDE. More stable. MFC 7.0 is improvement over 6.0. Probably other reasons I can't think of right now. VC 6.0 is fine for learning the language, though. If you were going to buy one thing, I highly recommend Visual Assist from Whole Tomato (www.wholetomato.com). It's worth its weight in gold. You can still get the VC 6.0 version.