Libvirt is collection of software that provides a convenient way to manage virtual machines and other virtualization functionality, such as storage and network interface management. These software pieces include an API LIBRARY, a DAEMON (libvirtd), and a command LINE utility (virsh).
A PRIMARY goal of libvirt is to provide a single way to manage multiple DIFFERENT virtualization providers/hypervisors. For example, the command 'virsh list --all' can be used to list the existing virtual machines for any supported hypervisor (KVM, Xen, VMWare ESX, etc.) No need to learn the hypervisor specific tools.