Coating by zinc is better to protect metal from corrosion. This is because, on coating the metal by zinc, it acts as physical barrier and protects the metal from environment. If the coating is removed, then zinc and metal form a cell, where zinc acts ac sacrificial anode. Thus it further protects form corrosion. Outer portion of zinc coating reacts with oxygen, moister and carbon dioxide to form zinc carbonate. This zinc carbonate adheres to inner zinc very strongly and protects the inner metal from corrosion.