Using a specific technology in virtualization depends on what you want to achieve. So according to your goal, look for one solution which can help you easily and that you can handle more efficiently. VmWare is really good. The only problem is the price. In another hand you have Hyper-V if you use a Windows server (you will just buy the license for the bare metal server). You can now use KVM for open source technologies.

The choice of KVM vs. Xen is as likely to be dictated by your vendors as anything else. If you're going with RHEL over the long haul, bank on KVM. If you're running on Amazon's EC2, you're already using Xen, and so on. The major Linux vendors seem to be standardizing on KVM, but there's plenty of commercial support out there for Xen. Citrix probably isn't going away anytime soon.