[citation][nom]extremepcs[/nom]ME and Vista - That makes 2 so far.[/citation]
The biggest problem with ME was that Microsoft deprecated VXD support for hardware made by crappy companies that didn't want to make WDM drivers for consumer hardware, which use more 32-bit instructions over VXD's which include codeing practices that date back to Windows 3. Hardware manufacturers pushed back, but thankfully, Microsoft pushed back again even harder with XP. Hardware compatibility was equally brutal with XP when it first came out, but many good hardware manufacturers already saw the cards and were actively developing WDM's for Windows 2000 for their business hardware, so developing WDM drivers for consumer hardware used the same skills, and since XP was unifying the consumer and business codebase, it made it easier for hardware manufacturers to move forward.
Since you didn't include Windows 7 in your list, I would bet that you feel that it is a "good" version. The thing is, if Windows Vista wasn't made, you'd be complaining about 7. Windows 7 isn't anything more than Vista-refined. There is absolutely nothing wrong with Windows Vista, and what WAS wrong was hardware manufacturers and software developers that got complacent with XP and didn't update. After a year or so of having Windows Vista on the market, most developers had already cleaned up their act and resolved issues, and Vista today is just fine. Performance on Windows 7 isn't incredibly faster than Vista, as benchmarks will show, but it has had a few optimizations. Tweaks to the UI were made. Nothing dramatically different, but still different nonetheless. UAC is tuned down by default, which I, and anyone else in security and IT, think is a mistake. Both OS X and Linux are more "annoying" in that they ask for passwords for privilege escalation, even if the logged in user is an admin, whereas Windows doesn't, even at the highest UAC setting. However, *nix allows software to be installed in the user context without admin rights, whereas Microsoft doesn't consider this an acceptable practice due to security issues that can affect the user account, which is a common tactic of recent malware even if it doesn't affect the overall system context, such as viruses that insert themselves in the users Application Data folder and load at login (disclosure: Microsoft doesn't outright block software that only installs in the user context).
I equate Windows 7 to Windows 98. People thought both were "major" revisions, but in reality, they aren't really that different from their predecessors codebase. The biggest problem with bringing out new codebases, like how ME tried to improve the consumer base by using a driver format that was introduced by Windows 2000 (and drivers were and still are one of, if not the most common cause of system stability issues), and how Vista was to have a new security and vastly improved deployment model (you have to admit that the max 15-minute install time for Vista had to be a pleasant surprise over installing XP), remains to be the potential lack of readiness of the partner ecosystem.
If Windows 8 tries to do too much over 7, we may see another release that isn't widely accepted. I do like the idea of a client-side hypervisor to take care of legacy compatibility though (rumored new feature). That means no more virtualized OS environments ala Virtual PC just to run that old Win 95 program that you can't give up. We'll see though.