OpenVZ/Virtuozzo is an excellent platform for most websites that you'd be using the VPS for, as it provides a lot of speed and flexibility. OpenVZ provides fast deployment, quick reboots/reinstalls and can be optimized at the host-level. OpenVZ/Virtuozzo are considered to be "Virtual Private Servers" as they are Containers.
Xen is primarily a paravirtualized environment. Very secure, very powerful and one of the primary virtualization platforms used in most cloud environments. Unless you're looking to run a large-scale dedicated environment, Xen might not be the best choice for you. However, if you're looking to have more control over your environment, it is the best choice. Xen is very difficult to overcommit at the host node, so you don't have to worry about the server being oversold.
KVM is a Hardware Virtualized Environment (HVM), and though I don't have too much experience with the platform, I have heard mixed reviews. KVM utilizes an almost a decade old method of virtualization, and there have been some issues as of lately with security as it hasn't been as widely adopted and there is less of a development community behind it. KVM can overcommit the same as OpenVZ can utilizing ballooning technology, meaning that if one VPS on the server is using more resources than the others, it will take the unused resources and push them to that one VPS while pushing idle VPS memory into the SWAP.