Generally speaking, I tell people not to install free software on a computer anymore unless it's licensed under the GNU GPL or another similar open-source license, because open-source software is the only type of software that has any high degree of likelihood of not containing adware or spyware or other malware.
The problem with that advice is that the people who know what it means probably already follow it, and if you follow this Farquhar's Law (there are many) to the letter, you miss out on gems like Irfanview.
So, I've got these Windows 2000 boxes that didn't have enough space, so I resized some partitions. No error messages, no problems. I reboot, and the drives still show their old size, even though in Disk Administrator they show the right size.
Defragmenting on a regular basis isn't the only thing to overall system performance, but it's a major factor. Fortunately there are some free tools that do a good job of it. Unfortunately they don't come with Windows.
Here's how to automatically defragment your system and your registry.
I can safely say I really did write the book on Windows optimization (Optimizing Windows for Games, Graphics and Multimedia, O'Reilly, 1999, ISBN 1565926773) but that was five years ago and covered Windows 95 and 98.
Windows 2000 and XP are a different animal, and are as similar to the obscure OS/2 operating system from IBM as they are to Windows 95/98.
Here's what I did when my work computer slowed to the point that I could no longer do much work.
I'm sure you've read already that Service Pack 2 for Windows XP is going to break some software in the name of enhanced security. And I'm sure you've read lots of howls of protest. And maybe some smug snide asides too.
What I'm sure you haven't read is what to do about those compatibility issues.
Free graphical Zip/Unzip programs for Windows have come and gone. I'm always looking for one because I don't use a graphical one all that often, preferring the command-line utilities from Info-Zip that I've been using since 1991.
My church's IT czar asked me a good question the other day. His network performance was erratic and Network Neighborhood was messed up. Some computers saw different views of the network, although if you manually connected to other computers, that usually worked.