Just a quick reply:
I wouldn't buy 2nd hand RAM without a warranty. If you do, run something like memtest86 to thoroughly check it. RAM sticks can develop small errors which aren't usually apparent, but these errors can manifest themselves in programs occasionally crashing: very hard to debug!
Hard disks are expensive at the moment, due to bad weather in the far east where a lot are manufactured (see other threads on here). you could buy a solid state disk but they are comparatively expensive per GB of storage. I wouldn't bother unless you need faster disk access time (you probably don't).
As Graham said, Windows XP will only be able to use about 3.5GB of RAM. You can add more but it won't be able to use it above this value. The problem is that, like most PCs, the RAM needs to be installed in matching pairs. You could install 2x1GB giving a total of 2GB, or 2x2GB giving a total of 4. I'd probably be tempted to install 2x2GB, and just accept that it won't be able to utilise the full 4GB.
Have a look at the Crucial website. They make fairly good RAM and can identify *exactly* the RAM you need.