A waistcoat is the sleeveless, collarless garment worn over a shirt and under a jacket, chiefly in British English. Americans call the same garment a vest, but in British English vest instead usually means a sleeveless undergarment worn beneath a shirt.
The core difference
Waistcoat is the British term for the sleeveless suit garment, while vest means the same thing in American English but means an undergarment in British English.
- waistcoat — a sleeveless, collarless garment worn over a shirt and under a jacket, chiefly British: He completed his three-piece suit with a smart tweed waistcoat.
- vest — in American English, the same sleeveless suit garment: He wore a three-piece suit with a matching vest. In British English, it instead means a sleeveless undergarment: He layered a vest under his jumper to stay warm.
How to tell them apart
The word waistcoat is simply a compound of waist and coat, describing a coat-like garment that sits at the waist. Because British and American English split on what vest means, the safest approach when writing for a British audience is to use waistcoat for the three-piece suit garment and reserve vest for the undergarment worn beneath a shirt.
Vest has a completely unrelated legal and financial sense too: as a verb, to vest means to officially give someone a right that becomes legally theirs, as in shares that vest after a set number of years.