I will while I'm here;
In brackets are things that are good and bad about them.
Cross-platform:
1. Codeblocks (easy to use, nice GUI, lots of settings; haven't found anything bad about it yet)
2. Eclipse (never used this, but apparently it's not so user-friendly)
Windows:
1. Dev-C++ (easy to use, out of date)
2. MS-Visual C++ (powerful debugger, microsoft related)
I use Eclipse, I think it's powerfull and user friendly.
I tried Dev-C++ and hated it.
I used MSVC++ for a while but missed a lot of powerful features from eclipse, so I stooped using it.