The options:
1) Dual boot
Pros - you get full performance and maximum compatibility out of each OS
Cons - if you're working in one OS, you need to reboot to do anything in
the other OS. Transferring data from an application in one OS to an
application in the other OS is awkward.
2) Virtualbox (or other virtualisation software)
Pros - you can run applications from both OSs side by side and can move
data between them with ease. Moving the virtual machine to a new
physical computer is relatively easy. You can save snapshots of the
virtual machine, which makes rolling back to a known good state a lot
easier if you have problems (but that can take an awful lot of disc space)
Cons - you will suffer a performance hit in *both* OSs when running the
virtual machine. There can be compatibility issues with the virtual OS
and the virtual hardware. Physical hardware (particularly USB devices)
may only be usable in one OS or the other, but not both at the same time.
3) Wine
Pros - allows the use of a large amount of Windows software natively
within Linux
Cons - not all Windows software works with Wine and much of that which
does requires tweaking of the setup. Forget any software that requires
any kind of driver.
Personally, I use Virtualbox and Wine, as appropriate.