Depends on what you want, some people like the big IDEs like VS some people like a text editor and command line compiler. In Linux I usually just run vim and gcc/gdb manually, in Windows I'll use VS because I'm not as comfortable with Windows' CLI. But if you want free, VS is anything but free. I think VS is overkill for most people, but the MSDN it comes with is great.