I believe that's the way to go moving forward. For net-based services, I see no compelling reason for the traditional server method. Maybe in the past when virtualization was in its infancy performance was severely degraded, but nowadays? Awesome.
I use VMs on my laptop. Linux host were all my work is done, and a Windows VM. Whenever the Windows machine gets corrupted with viruses/malware/bloat; delete, clone master copy, good to go.
VMs are awesome. At work most of our servers are now VMs. I have a few different ones I use for developing apps that have specific environment requirements, also makes setting up new environments super easy.
x3 (or 4) on VM's. We migrated over 30 servers onto a couple VM's. No problems. I love the fact we can move a VM from one physical server to another in seconds with VMotion.
For your home application it should work just fine. A whole entirely different operating system is running on your PC at the same time when you run it as a VM. So any system call such as keyboard and mouse will run independently of the "real" operating system. They both have access to the network simultaneously as well.
The achilles heel of vm's is processing resources. If the processing power is there, they are awesome, ESPECIALLY for testing and development. Production environments are always hairy, but some of the chips now (like Xeon Nehalem 5570) are just monsters. You start clustering big fat servers together that can handle the processing, then VM's are gold. I'm talking huge enterprise operations here, not setting up a VM on a machine somewhere.
I work with GIS software and databases. It seems I always need more beef from the VM's, but otherwise great. I mean, who has 50 extra workstations sitting around?
When you install the Windows XP VM it's going to ask you for a product key so I would say yes. I'm not 100% because any time I've installed a VM at home, it's been Windows VM along side a Linux VM. I've never done 2 Windows VM's for home use but I'm pretty certain you'll need a license for each version of Windows that you are running.