Microsoft wanted to finally start selling copies of Vista, so they killed XP.
Well that's not quite it in a nutshell... Microsoft discontinued 95, 98, ME and 2000 not too long after their successors were released, so it's not a lot different here, just a lot more fuss because XP became something the other OSes weren't... more stable & reliable, etc. Vista may have had its teething problems to begin with - and oodles of bad press wouldn't have helped - but the advent of SP1 has made Vista quite a stable and functional OS for the average home user to use.
And it's not like Vista wasn't selling prior to the discontinuation of XP, maybe not to the business world, but 20 odd million licenses worldwide isn't exactly a no-show, is it! For the most part, Vista is a good OS with plenty of potential, particularly for the home user, but MS needs to address pricing and the backwards compatibility and networking issues for businesses to more readily adopt it.
OK, there are some who, for various reasons, don't like Vista, but that doesn't make it a bad OS... more that it's like XP at the start (has issues like any other new OS) and people unsure of change aren't warming to it yet, in particular businesses.
Thing is, when Windows 7 comes out, the same resistance to change and criticisms will abound... it's too unstable, too bloated, has too many incompatibilities and driver issues, and our hardware needs upgrading to run this new touchy-feely thing we just don't need.... etc, etc.