However, there is a dark side: It's easy to break Windows by taking out too much. This is not a theoretical problem; the nLite XP forum contains a big thread that tries to spell out which files are needed to ensure that particular Windows functionality doesn't break. The vLite Vista forum doesn't yet have a do-not-remove list for specific software, so you'll need to interpret items in the XP list where possible, and fly by the seat of your pants for the other cases.
Windows XP and Vista consist of hundreds of components, interacting in ways that aren't always clear to users who are just trying to run applications. There are DLLs, COM objects, executable files, device drivers, and services that communicate behind the scenes to implement functionality. You may not use Windows Media Player, but you may still need the same codecs for a video player embedded in another application. You may not use Internet Explorer, but an application may use the WebBrowser ActiveX control to render HTML text inside its own window. When these parts are missing, those applications will fail--sometimes in dramatic fashion.
It may surprise you that Microsoft already has the tools and information needed to create a svelte Windows setup. It's called Windows XP Embedded. It's not intended for desktop operating systems, but for devices such as billboard displays. In those situations, the developers know exactly what software will be installed and can fine-tune the Windows setup in advance to remove whatever they don't need.
Windows users, in contrast, expect to be able to install any Windows-compatible software on their PC at any time. I've seen people use nLite and then spend a lot of time later trying to figure out why some application they have installed won't work properly. Browse the vLite/nLite forums to see plenty of similar cases. That's why I think tools like nLite and vLite are better used by professionals for limited cases, rather than by end-users looking to create a slimmer Windows.