The Xen + IOMMU setup is what I use and it works great once you get it setup. Hardware selection is the key to making it less painful to setup. Specifically, if you try to use an nVidia card as the passthrough card, you are in for a world of pain but, an ATI 6800 series is essentially an out of the box experience once you configure the bootloader to block the device from dom0. You'll also need to be careful which distro you use. The Debian flavor of distros do an awesome job of setting up grub to do the Xen magic so, something like Xubuntu 12.04 (haven't tried this setup on 11.10) should be ideal once it's released but, if you use something like Debian 6, you'll end up needing to get Xen 4.1 and a newer kernel (3.1+) to support the PCI passthrough backend. Both of those things are pretty simple to do if you know you need to do them beforehand.
Once you get the basics setup, you'll probably want to pass a few other PCI devices through. If you buy a cheap PCI USB controller, you can pass that through to the VM and then use a KVM to switch between Linux and Windows. If you have a crazy enough motherboard (or secondary cards), you can also passthrough things like one of your onboard NICs and my motherboard even has an LSI SAS controller that passes through just fine (you can't use it for boot devices but, RAID0 WD Raptors run at native speeds in the VM).
It sounds like a big hassle to setup and, if you are going at it completely blind, it definitely is but, once you get it setup, it's rock solid, native performance and no real upkeep at all. I've played things like Dragon Age II and Skyrim at max settings at 1920x1080 and had literally no problems.