1. Dual boot. This means you can choose which OS to load when you turn your PC on. Depending on the filesystems used, you can share data between the two operating systems.
2. A Virtual Machine. This enables you to use both Linux and Windows at the same time. One of them will be the main OS, and the other one will (usually) run inside a window, with reduced performance. Typical solutions are VirtualBox, VMWare, Xen and VirtualPC.
IMHO, the only reason to use multiple operating systems on one PC is if you have an application for each OS that you absolutely need but won't work on the other OS. If this is not the case for you, I'd say don't bother. Why do you want to use both in the first place? Do you have an application in mind? Do you just want to try out Linux? There might be other solutions to your problem...
I'd always prefer the VM way, because it's a PITA to reboot each time you want to use the other program and the performance hit is rather small (i.e. almost unnoticable) for most applications. There are some disadvantages, though:
You can't install drivers for special hardware (all hardware is emulated)
No graphics acceleration
Low performance for disk and network IO (due to hardware emulation)
Not suitable for realtime applications
So if you want to do low-latency audio on both systems, for example, dual boot is probably the way to go (maybe if you have a really fast PC, virtualization works as well, I don't know).
With the dual boot method, both operating systems stand completely for themselves, which might be an advantage, too.
When using a Virtual Machine, one can run programs on Windows and Linux side by side. The disadvantage is that whatever is running on the virtual machine can't quite access anything outside the virtual machine as the hardware is emulated. For full access to the hardware, I would recommend dual boot, although you cannot run both Windows and Linux simultaneously (as in being logged into both operating systems at the same time) on the same machine when dual booting.
What I would recommend would be to first get ahold of Linux. I would recommend Ubuntu or a variant of Ubuntu (Kubuntu, Linux Mint, Xubuntu, Ubuntu Studio). Install it on a computer that is already running Windows and have it resize the partition that is already on the drive. Ubuntu (or a variant of it) will then set itself up to dual boot with whatever version of Windows it is that you are running on your computer. Finally, make sure you install wine in Linux.
By using wine on a dual-boot setup, you can slowly ease into Linux. As wine matures through its development (it's still not at version 1.0.0), it should have less bugs and should support more software. Slowly, more programs will work on it. Of course, the Windows applications will probably run slightly faster in Windows, so it is always good to keep Windows on your hard drive, just in case.
Colton J. Provias
Film Score Composer, Location Sound Mixer, and Sound Editor
Full-stack Web Developer