I've seen your situation before (slow HDD). The causes I have observed have been:
1. PRECURSOR TO HDD FAILURE
Sometimes when a drive slows down for no apparent reason, it soon after expires completely. I have observed this more than once. Keep a REALLY current backup. Or, just change it out. When your tires are going bald, do you wait until they go flat and strand you? Or, do you just replace them.
In Windows XP, regularly run a full "Error Checking", aka Scandisk, with "Scan for and attempt recovery of bad sectors" checked. If new bad sectors are found each time you run it, the drive is failing.
2. FRAGMENTED HDD
Fragmentation of your HDD can slow it down a lot more than you might think. Run Defrag.
3. LARGE AND FULL HDD
The data writing density is the same on all tracks of your HDD. Since the outer tracks are longer than the inner ones, the data transfer rate is higher. Thus, the outer tracks give the best I/O performance.
When you first start using an empty HDD, the outer tracks are used first. Thus, a near-empty HDD delivers the best I/O performance. When your drive has a lot of data on it, new files are written to the unallocated space on the inner tracks and performance is lower.
What to do? Get a larger HDD and only fill it up maybe 50% or less. This makes a BIG difference.
4. MAYBE WINDOWS INSTEAD OF HDD?
Your desktop startup might be slow because your desktop Windows configuration is loading a lot of stuff during startup. It may not be your HDD at all. There are a LOT of possibilities (references below).
REFERENCES
Restore Your Computer's Performance with Windows XP
http://www.microsoft.com/windowsxp/using/setup/expert/northrup_restoreperf.mspx
Solutions to "Slow System Startup"
http://www.annoyances.org/exec/forum/winxp/n1041630673
Faster startup of Windows XP
http://www.tweakxp.com/article37030.aspx
Speed up Windows XP
http://reviews.cnet.com/4520-10165_7-5554402-1.html