Containers are a different form of the virtual machine that is completely dependent on the operating system of the host node. They are kernel-based virtualizations that share the host operating system, thereby reducing the overhead that a KVM virtual machine has. Due to the lower overhead, the virtual machine density per node can be tighter and more containers can be hosted than KVM virtual machines. This comes at a price of less virtual machine isolation. Since containers are dependent on the underlying operating system, there can only be Linux-based containers. No Windows operating system can be containerized. Unlike KVM virtual machines, we cannot clone a container or turn a container into a template. Each container is a virtual instance that runs separately.
LXC is just another type of container technology. OpenVZ is another container technology...