If I opt for a new graphics card is there any compatibility issues I should b
e concerned about? Will the newer cards work with an older computer and Windows XP?
I don't know what kind of machine you have, the motherboard, and yes it can make a difference. Older motherboards support PCI slots, which are pretty powerful, but they are not as fast as the slots on newer motherboards with the PCI express slots (I believe that is what they are called). You need to find that out, and then find a graphics board that will work in that kind of expansion slot. I would recommend getting it with at least 1 gig of graphics memory,the more the merrier. I would also check the power rating on the power supply on your pc, to make sure it is strong enough to handle the additional load. Assuming you have maxed out the pc to 4 gig of memory, a faster graphics card is the best thing you can do to improve performance. I would hazard a guess that you probably have a pci slot, not pci express, given the age of your machine.
If you know the make and model of your machine, you probably can look it up on the net, google the name/model (look on cnet, for example), probably will find the specs. Then when looking at a graphics card, look for one that has the interface your machine supports.
An external USB drive will be the slow, I wouldn't run programs off of it, rather, it is better to move data and such onto the USB drive and open up space on your main hard drive, a full hard drive slows everything down, plus it makes paging and swapping a lot less efficient.