About Vista : it's been a mild pain. I'll divide them into three categories :
1. MS bloatware. People talk about Vista being a "pig" for performance, taking lots of RAM and taking a long time to boot. This is really not anything fundamental to Vista, and if you bloat up your XP it will be just about the same. The big difference is that Vista comes with tons of awful bloatware enabled by default, from SuperFetch to Defender to the Search Indexer. On the plus side it's not that hard to turn all this off.
2. UAC. UAC is mostly not a big deal (and of course UAC was in XP too - it's just nobody knew it because it was off by default; if you like this is really just another of #1 - turning on more bloat by default). In fact I sort of like UAC in theory. Unfortunately there are some stupid problems with it. The biggest one is simply that's there no simple way to say "I trust these programs", or "let non-admin users run this program always". Annoyingly MS provides a check box for "ask about this file" but turning off that check box does absolutely nothing. There are solutions, the best of which IMO is using "streams" ; see more : here or here
So, you've turned off all your Vista bloatware and UAC. At this point Vista is almost exactly the same as a nice trimmed down XP, so you shouldn't have anything to complain about. But there are remaining problems, and these as the bad ones :
3. Drivers (and other non-MS software). This has been the biggest problem by far. Here we are well into Vista launch and it's still hard to find (working) Vista drivers for many things. It must have been an absolute nightmare near launch. For the life of me I don't understand why they thought they had to invalidate the old driver model. It seems like they could have preserved it and just required new drivers to be the new way. Anyhoo, our digital cameras don't have drivers for Vista, the damn Intel graphics driver doesn't work right in Vista, the sound driver doesn't work right, etc. Every time you go download some tool you have to pray they have a Vista version or the XP version will work.
Compatibility with old versions of Windows is the most valuable thing that Microsoft owns. It's absolutely awful of them to break that. There is no possible feature that could ever be more important than making all old Windows software (and drivers) work.
4. Aero ("desktop composition"). The fancy graphics modes are *really* slow. I literally see "Desktop Window Manager" taking 10% of CPU quite often. It also gobbles video memory. Now, you can turn almost all of this off - but it's a pretty all-or-nothing thing and you lose all the new features. That would be okay if the Intel graphics driver worked right - it doesn't, it gets random glitches unless you have Aero enabled. So at the moment we're stuck with this perf annoyance.
If you are lucky you can find all the drivers and software you need for Vista, and it's a perfectly fine OS. The bloatware and UAC and not problems that can't be dealt with. On the plus side, lots of Vista features are much improved over XP. There are great new APIs, and the Resource Monitor is very cool.
I don't really see how "Windows 7" will fix any of the real problems here. Presumably drivers will be better just because people have had more time to transition over to the new model. If you just took a Vista install and turned off all the crapware and UAC and put working drivers on it, everyone would be quite happy (like that retarded MS commercial).
(BTW this is for Vista-32 ; I'm sure Vista-64 just greatly magnifies the problems of random drivers and 3rd party software not being available).