Virtualization is clearly the "right" way to go versus dual booting for most any application where you want the two sides to interact with one another. VMware and friends offer a "virtual" network interface between your host operating system and the guests. This means you can use standard network file sharing (SMB or whatnot) to copy files back and forth. You can install your "guest" operating system with a relatively small system partition and then get to your home directory on the "host" via the network.

One nice benefit of VMware's virtualization is that making a system backup is painless. Just shut down the guest operating system and make a copy of its disk image. VMware even offers the ability to automatically undo any changes. If you're stuck in a world where your Windows security is a disaster but you can't do all the security fixes, this is ideal.

The only place where dual booting would seem preferable over virtualization is if you're a hard core gamer. The guest operating system isn't going to have access to the full power of your actual graphics card, although you could imagine that graphics card vendors might cooperate with the virtualization people to address this concern...