Covalent bonding is a form of chemical bonding that is characterized by the sharing of pairs of electrons between atoms. In order to do this the electrons have to be of a similar energy and when the bond is formed it has to be of lower energy than the starting position. The most common covalent bonds are, as you say, between non-metals. There are also covalent bonds between some metals and non-metals. Covalent bonds between metals are rare one example is between molybdenum atoms, but this is very unusual.