is it possible to install xp on to a external and boot from there if my system is running vista?
Read--> How to install and boot windows on an external (USB) hard drive
You'd be better off using a virtual machine. Virtual PC and VirtualBox are both free and would allow you to run Vista and XP at the same time. But there are almost no programs that run under XP that will not run in Vista. If you plan games, VMWare Workstation is the best idea for a VM since it supports DirectX now.
Trying to run an OS from a USB port would be horrendously slow and pretty useless. XP will not normally install to a removable device for just that reason (among others) and making alterations to any Windows system files is illegal.