There are VMware products that are free. You can user VMware server to build your virtual machine and run it. Alternatively, once you have built the virtual machine, you can use VMware player to run the virtual machine (although you have to uninstall VMware server to do this). VMware player runs lighter and is easier to use than VMware server. One advantage of the virtual machine is that you can take copies of it. If your Windows virtual machine gets infected, just overwrite with a saved snapshot and away you go again.
VMware will run on either a Linux or Windows platform and will host either a Linux or Windows guest. I've installed on a Linux host so that I can address more RAM, that means I can use huge amounts of RAM for Linux and up to the maximum addressable by Windows XP 32 bit(which is either 2 or 3GB, can't remember offhand). Doing it the other way means less RAM available for both Windows and Linux.