there is likely nothing wrong with the hard disk AT ALL.
this is actually a known problem that can occur with the NTFS file system over time- I had the problem as well.
the first thing to try would be to boot from the XP CD to the recovery console (you have the cd right?)
(of you don't have the CD, you can find a recovery console CD
Herewith luck, the Recovery console will find your windows installation and let you log onto it. At this point you should run "Chkdsk /f"
once that completes, reboot. If it STILL doesn't work, try again- this time perform a "chkdsk /r" (be warned, this will take a LONG time)
if it STILL doesn't work...
then your in the same boat as I was- It turned out to be a problem related to using the NTFS filesystem on the boot partition.
I solved it by using a Ubuntu CD and copying all my important data to external media- then I resized my partitions so that my boot partition (C) was a 32GB FAT32 volume and my data partition (D) was consuming the rest.
good luck!