While the SATA and NIC statements in the linked article above are still true, the best performance comes from:
- fully allocating storage (don't use sparse files unless you are on SSDs)
- properly allocating RAM and CPU (too little for the host or the guests is bad)
- using VirtIO drivers for storage and networking (these drivers are available for both Linux and Windows)
There are a few other settings like disabling any video acceleration, 2D and 3D. I've written another article after seeing a Core i7 brought to 30 minute Ubuntu desktop logins with default VirtualBox settings.
If you are doing server virtualization, not desktop OSes, please do not use VirtualBox. Use KVM, LXC or ESXi instead. If you can get Spice working, even remote desktop performance over the LAN and WAN can be impressive with KVM as the host.
VirtualBox is best for desktop virtualization. Only VMware Workstation is better, IMHO.