I noticed the old "Visual C++ for free!!" thread was removed in the cleanup, so I thought I'd make another, at least to point this out to you all:
Visual C++ Express (at least the new version), is crap. Hell, it's crappier than crap. I would (almost) rather assembly. Reason? M$ in their infinite marketing wisdom, removed a number of libraries from the package. MFC, Winsock, and most other Windows-specific libraries are no longer included (even the core library, windows.h has been removed). Of course, if one has a fast internet connection, or alot of patience, you can download the Windows Platform SDK, and spend several hours configuring it for proper use.
I myself will probably never, ever go back to Visual C++ (as I can't afford $300 for one piece of software). It's Code::Blocks & MingW for me.
But, if anyone else would like to list some development tools that they have used, please do so here