A Virtual Private Server (VPS) is a virtual machine sold as a service by an Internet hosting service. AVPS runs its own copy of an operating system (OS), and customers may have superuser-level access to that operating system instance, so they can install almost any software that runs on that OS.
A VPS works on basically two technologies:
KVM is true virtualization where the VPS operates as its own server, independently of the host node. OpenVZ is a container style of virtualization which relies on the host node’s kernel. KVM has no restrictions in terms of functionality, but it has more overhead than OpenVZ.KVM VPSs are not dedicated environments.
Moreover,KVM VPS allows fixed and reserved resources whereas OpenVZ VPS allows guaranteed resources.
KVM is more for advanced users since it requires an installation of a OS from an ISO where OpenVZ uses templates (pre-built images). OpenVZ is better for new users because there is less complexity and you can start with smaller plans and grow into them. OpenVZ does offer much better performance but KVM can be treated more like a real server would (a KVM is a true virtual server while OpenVZ is a container with completely shared resources) and uses its own kernel which the client can load whatever kernel modules they’d like. OpenVZ is restricted to the kernel and modules that are being run by the host node.
NOTE : If you are a host selling to your clients, OpenVZ is easier to set-up and maintain properly, while KVM takes much more networking knowledge. OpenVZ and their templates are more beginner friendly in that aspect. If you are simply an end-user, don’t worry and go with a managed infrastructure provider.