If you can find drivers for the hardware that work with XP, then you can run it on virtually any computer. However, that's the big thing, whether or not you can find drivers for the hardware or not. Most often the answer is not, and in such cases you're screwed.
But in all honesty, Vista really isn't half as bad as people like to try and make it out to be, unless you buy some cheap sub-500USD POS computer where the quality of the thing is questionable at best. In which case it's more the fault of crap hardware than it is Vista. You could install Linux on that system, and it would probably stumble and fall quite a bit too. Maybe not as much as Vista, which doesn't take well to shoddy hardware, and it's driver model makes it extremely vulnerable to a poorly written driver, but bad hardware is bad hardware. Any OS will have problems if the OS is expecting a yes or no response, and the hardware sends an answer of "France". The OS will naturally then wonder *** the hardware is talking about, which we interpret as a crash.