Virtual box is pretty cool, and performance is usually "reasonably acceptable" (although hard to predict, because the host OS will act as a sort of massive disk cache. Maybe. I run most of by VMs with 2G to 4G of memory, and my host has 14G. Things get pretty painful if I run enough VMs and Host apps at the same time to fill up the available memory.
One problem is that windows (in particular) doesn't come with particularly VM-friendly licenses. Put a purchased windows 8.1 on a VM, and you won't be able to clone it to a second VM on the same host, even if you were only going to run one at a time. I'm not sure what will happen if I delete the VM and try to install windows on a brand new one; I'm afraid to try till I actually HAVE to. (and being able to delete everything and start fresh is a very fundamental feature of using something like virtual box.)