Question:Why are metals better conductors of heat than non metals?
In metals some of the electrons from each of the atoms are free to roam around within the material. These are called "free electrons" and the free electrons provide a second mechanism for heat conduction.
When one of the free electrons collides with a vibrating particle, the electron absorbs some of the vibrational kinetic energy and move off through the material to collide with another particle and transfer it's extra kinetic energy back to vibrational-kinetic energy in a second particle.
The second particle can be far away from the first particle, so the electrons carry the energy further with each collision. In this way, free electrons allow the extra vibrational kinetic energy of the particles being heated at one end of the piece of metal to move along the material much faster than can happen in non metals.
Conduction between the particles of the material by repeated collisions between particles also happens in metals, but is not any faster than in non-metals.