Windows slowdown has three main causes: The Windows Registry gets bigger, DLLs and other junk are needlessly duplicated, and hard drives become fragmented. One other cause on machines that have a lot of programs installed is that a lot of background services and applications can be running, without your knowledge.
These potential problems aren't mutually exclusive.
The Registry can swell as you install more software, which in turn loads a lot of background tasks. Plus, your hard drive may fill up, making Windows auto-defragging harder. But let's look at these issues one at a time.
The Windows Registry
Windows maintains configuration settings, application install settings, and options in a database called the Windows Registry. As you install and uninstall applications or make changes to Windows, the Registry tends to grow larger and larger. For example, the Registry on my production PC, which has a ton of apps installed, is about 384MB--and that's just a backup.
As the Registry expands, applications and services that use it take longer to load. Searches conducted through the Registry by apps that may have written their data in multiple places also start to require more time. Some applications, such as security tools and certain media players (PowerDVD and the like), touch the data in a large number of locations.
The other culprit behind Registry bloat is incomplete uninstalls. Most users install or uninstall only a few applications per year, but some people (gamers and power users come to mind) tend to install and remove many programs.
Incomplete uninstalls leave residue in the Registry, which adds to its size. Windows 7 and its program uninstaller is much improved in this respect, but still not perfect.
As it turns out, however, Registry cleaners aren't really the way to go.
Associated Application Crud
When you install applications, sometimes they need various runtime modules to run.
See all those separately installed copies of the Microsoft Visual C++ redistributable? You really need only the latest version. If you're running the 64-bit version, you might need two copies, one for 32-bit (labeled "x86") and one for 64-bit (x64).
This is just one example of the kind of junk that can get installed on a system. It's hard to stop and track down, and determining whether removing it might break something is often difficult.
Unneeded Background Services and Tasks
The more stuff you install, the more the programs seem to install some kind of service in the background. Maybe that service will speed up an application launch. Maybe it's a control-panel applet for a high-end gaming mouse.
Do I really need Impulse Now running all the time? I use it only when I'm running a game downloaded from Stardock's Impulse digital-delivery system, or when I'm buying a game from there. I certainly don't need it. And I rarely use Microsoft OneNote, so that doesn't have to run either.
Hard-Drive Issues
A machine's file system will become fragmented eventually. Windows 7 tries to minimize that by running the defragger in the background when the PC is idle. But if you frequently create and delete files (or use applications that create and delete files regularly), the file system is bound to become fragmented.
System-performance issues can also crop up if the drive gets too full. If a drive is more than 90 percent full, swapping from main memory to the drive becomes very slow, which can drag down the system as a whole. It may be time to clean out your drive--or buy a bigger one.
Incomplete Uninstalls
The Windows uninstaller--as well as similar uninstall apps that ship with some software--doesn't always completely remove an application. This shortcoming causes the Registry to balloon, leaves extraneous files on the hard drive, and otherwise cruds up a system.