They're both fine. You can also look at using EclipseCDT as well.
Personally I'll use Eclipse as my first preference with Visual Studio as my second. With these there is really no need for me to use Code::Blocks. My choice is based on what is most commonly used in professional development. Eclipse is multi-platform which is why it's my first choice.
I to use Visual Studio 2012 Ultimate. On that note I would suggest getting Visual Studio.
It is easy to use, a large community is there to help if any Setup problems arise. Apart from that the help with auto-complete words and such as a great help. There is also multi-line editing where you can edit multiple lines in a go.
The environment is stunning. It is used in the industry very often, which means understanding how to work with it gives you more experience. NOT MUCH BUT STILL COUNTS.
GL
Microsoft Visual C++ is btetter imo, great interface easy to use, you can choose free edition " Microsoft Visual C++ Express " or paid versions like " Pro. Ultimate... all depends if you can afford to buy the license.
Anyway, Microsoft Visual Studio is your best choice.
It requires a bit of manual setup, but it's got excellent code completion (unlike Code::Blocks) and cross-platform and open-source (unlike Visual Studio).