For Windows, and actually, for many platforms, the free compilers are from GNU. Eclipse (mentioned by Campbell) is the GUI layer (ie.
IDE) on top of the command line compiler.
If, you only want the command line compiler, there are two options. The best option is Cygwin, which brings the whole GNU tool set within reach, for the Windows command line. Some people don't like that, so GNU also has an option to bring the minimum needed to run the C/C++ compiler.
On the other (third) hand, it can be argued that many companies that code C/C++ on Windows, uses the Microsoft tool set. So, downloading the visual C/C++ compiler from Microsoft may also be a good idea (for learning purposes)... but ... I don't think this compiler is free.
Henry