Windows Vista wasn't a bad OS. It just removed the DOS part which 90% of the programs of that time used. XP was a mix of NT and DOS. If there were more programs independant of DOS, it could've been a good OS.
My mouth is just aghast in the inaccuracies of this post.
Windows ME was the last version of Windows to be built on top of MS-DOS; all future versions (under the NT brand) were built on a new kernel, and treated MS-DOS as a separated component. MS-DOS was still included as a separate piece until Windows Vista, at which point it was just outright replaced by the Command Prompt, a separate but similar system.
All versions of Microsoft Windows have had an MS-DOS like command-line interface (CLI). This could run many DOS and variously Win32, OS/2 1.x and Posix command line utilities in the same command-line session, allowing piping between commands. The user interface, and the icon up to Windows 2000, followed the native MS-DOS interface.
Consumer Windows (up to 3.11, Win9x, WinME) ran as a Graphical User Interface (GUI) running on top of MS-DOS. With Windows 95, 98, and ME the MS-DOS part was integrated, treating both operating systems as a complete package. The command line accessed the DOS command line (usually command.com), through a Windows module (winoldap.mod).
A new line of Windows, (Windows NT), boot through a kernel whose sole purpose is to load Windows. One can not run Win32 applications in the loader system in the manner that OS/2, UNIX or Consumer Windows can launch character mode sessions.
This "90%" figure is also wildly inaccurate; if that was the case, people would be calling Windows 2000 the worst OS of all time. By the time of Vista, a lot of consumer applications were 32-bit, and a couple had already started to move into 64-bit. The only issue with program support was that a number of older programs were written in 16-bit (like the original installers for all the old LEGO games), and if they hadn't been updated and you had a 64-bit system, you were out of luck. This isn't a problem with Windows, though.
The real reason for Vista being "terrible" is because of the way in which Microsoft tried to approach security. Vista implemented a lot more features that consumers and developers weren't necessarily ready for, such as the UAC system or the WDDM/DWM systems for handling rendering the screen. They were trying to address the massive problems of Windows XP, but they didn't give enough time for hardware manufacturers and program developers to anticipate and update their systems in advance. Windows 7 is just a polished up version of Vista, built with the lessons learned in mind.
Windows Vista wasn't awful, it just wasn't ready.
The absolute worst operating system is Windows ME, an ungodly piece of stuff.