I've been using VMware fusion for years now, and can recommend it highly. Parallels appears to be a nice product as well, but VMware... It's what they do!
I'm not a big boot camp fan. Partitioning your disk up, having to reboot and stop what your were doing, and then maintaining two environments. Unless you really need ultimate performance, or crazy graphics in windows, it's not really worth it.
VMware on a new machine runs so well you can't even tell it's a vm.
And all the benefits stated above are GREAT for development.