I wouldn't go the Vista route, just a personal suggestion.
I am running Windows XP, with an Intel Pentium 4 processor 2.4ghz, and 768mb ram. I have two drives, a C:/ and a D:/
A few months, my windows XP home edition messed up somewhere and it my computer would not boot any longer. I tried to repair it and that failed as well. Since my computer has a second harddrive, D drive, I reinstalled windows on that disk. Now I basically have two drives, some programs running of the old C, some off the D, and just a really messy computer. The question I have is, would it be ok to move all the files I would like to keep onto my current D drive, and then format the C so it is clean, and then upgrade to Vista on my C, and then move everything back over to the C or is there something else I can do? Is there a way to get rid of the old windows OS that doesnt work anymore on the C drive, and use it as a storage only? I'm just really confused about what I can be to get my computer back together. Thanks.