Eclipse is very good. The Android plugin is a piece of sh*t.
I did some C++ development on Eclipse, and I found it nice. Doing JavaSE, of course, is very good also (but some functionalities for JavaEE needs some serious work). But a lot of the best Eclipse funcionalities are trimmed to Java development, I never had to do refactoring on C++ code using it.
I did a lot of jobs using Visual Studio 6.0 a long time ago, that was very limited - but once you fill the gaps with the proper plugins, the fact is that that thing used to work fine. 2005 was ok to me, but I didn't too much development on it (I leaved the job at that time).
Things started to change on 2010 (I jumped over the 2008). Opening a legacy project on your Solution is almost a russian roulette - you never know what that damned thing will decide to merge with your other projects. Man, what a mess it does sometimes.
The last prick it played on us was last week. From nothing (we thing that was some automatic update) the compiling started to fail on linking ("invalid COFF format" or something). No problem, as MS already published a fix
But the fix "fixed" something that broke compile time (no big deal, but hell....) and was a huge pain in the ass to install.
Again, no (really) big deal, but this is exactly the kind of problem that my employer claims to avoid by using Microsoft, instead of doing development using Linux - that it's a bitch to install and configure, but once it starts to work, it works and that's it.