My performance tests indicated no clear winner in CPU-intensive tasks. Hyper-V sort of won the I/O tests, but I think you could probably get any desired outcome based on how you tweak the tests, so I'd even call that a wash.
So choosing the right virtualization solution for me comes down to usability and cost.
For me, Hyper-V seemed to have an edge in usability. I have no desire to earn a PhD in virtualization, and Hyper-V seems to have wizards and online docs which made things easier for me.
ESXi has plenty of features that would appeal to a larger 24x7 production shop, but are overkill for me. Further, all these extra bells and whistles seem to get in the way of the rather simple tasks which I'd like to do. However, if you have a large-scale virtualization project, ESXi may be the way to go.
KVM is open source and off to a great start, but I found it a little too clunky and buggy for me.
VirtualBox is "more or less" free, has fine performance, and importantly is cross platform. You can run it on Windows, Mac, or Linux hosts. It's a very good option for use by an individual or small team of developers or testers.
As far as licensing costs, Windows Server for a home network is rather modest at a few hundred dollars. For ESXi, if I read their current FAQ correctly, there is no ESXi license fee for up to 32 GB of physical RAM. KVM has no license fee. If you're thinking about rolling out a very large virtualization project, you may want to work with KVM to avoid heavy license fees.
But for me, it seems to come down to usability since performance was largely comparable. Hyper-V seems more straight-forward, ESXi has more high-end features, while VirtualBox supports multiple host OSes.
Finally, other "intangibles" may affect your decision. In my case, I work with Drupal, and there seems to be a lot of tools work in the Drupal area surrounding VirtualBox (ex. Drupal QuickStart and Vagrant). So don't forget these "intangibles" when selecting a virtualization technology.