A cardigan and a waistcoat are both knitted garments worn over the upper body, but there is a subtle difference between the two. A cardigan is sleeveless and is often worn as an extra layer to add warmth. On the other hand, a cardigan has sleeves and can be worn as a lightweight jacket or an extra layer for the arms. The cardigan is also often buttoned at the front, while the waistcoat can be open or closed with a zip or buttons at the side.