I bought Vista the day it came out, and I absolutely love it. It's far beyond XP in my opinion. Sure it's a resource hog, but so was XP to systems in 2001 when it came out. Most people on the "Vista hate" bandwagon haven't used it long enough to appreciate at all, or they try and put it on a system predating XP.
I disagree. There are plenty of qualified people that have used Vista and hated it since beta. I am one of them. There are plenty of people who talk out their ass too, and there are plenty of people that like it but have no idea of the underlying technologies.
The truth is, there is a lot of information out there, a lot of misinformation, and a lot of people's opinions.
I look at it this way, how is it better, how has it improved and how do you value it and justify the cost of upgrading?
Does it make your computer more immune to virus attacks? No, it doesn't security is a bit better but it is more of a "user beware" security. It is not like it made leaps and bounds over XP. Improved yes, improved a crap ton, no.
Does it make your computer run faster? This is highly debatable. I won't get into specifics but google searching same hardware spec machines running benchmarks with XP on one machine and Vista on the other display some results that would say, No, vista is not all that much of a performance enhancement.
Features? What features does it offer the average user? Really, none at all. It does offer some features geared towards power users and IT people, but really nothing that would really benefit the average end user.
Cost? Is it worth $300 for Vista Ultimate? Not for me it isn't. I also hate feature limiting an OS.
Does it look pretty? yes, of course way prettier than XP. Maybe that matters to you, and if it was a deal breaker you would be running OS X or Linux with Beryl + Compiz if it was really that much of a deal breaker.
This part I will touch on I will actually side with MS on. A big part of the problem is that developers got lazy, and MS gave all the developer the devkit like two years before Vista was released when it was in Alpha stage. They had plenty of time to update their products, drivers, applications, so on and so forth. This is the fault of the developer plain and simple. However, MS has enabled this behavior by allowing developer to write sloppy code for an insecure kernel of an OS. I still blame the developers though, they should have had their act together.