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 (currently the 2.6.32 branch).