Microsoft should put a program in windows where instead of doing a fresh reinstall because you might of upgraded ur computer hardware you can just run a application thats deletes all of the old files, registries and any other clutter that has information about ya old hardware reboot ya system then scan for the new hardware then WHOALLA!!!
You can achieve that by swapping out your current registry for a default one, placed there as a backup during original clean install.
This will have the effect of wiping out all your programs, settings, profiles the lot and the computer will run like a brand new Windows install and speedy too. You may or may not run into problems with DLLs that have been replaced since that original install, however.
What it will do is physically leave all the installed programs sitting uselessly in place and keep any data on the drive intact, which is good.
I did it once years ago on XP while learing about recovering corrupted Windows installs and I'm sure that Vista & Win 7 have this too - google is your friend.
Overall, I don't recommend you actually do this on your main system and if anything serious ever goes wrong with it, try a repair install, clean install or other fix, as appropriate.