You've probably seen them both sat side-by-side on a coffee menu before. These two very similar sounding beverages are in fact very different.
An espresso macchiato is a traditional Italian coffee that consists of a single espresso “marked” or “stained” with a dollop of steamed milk. This technique of spooning a fleck of white, foamy milk on top of the crema of the espresso probably originates from busy bars where staff needed to be able to easily differentiate between coffees with or without milk. A dash of cold milk poured into an espresso immediately ducks beneath the surface, leaving it indistinguishable from a black espresso in a little cup. Hence, baristas would “mark” the milky coffees with a white dot.
These days, many specialty coffee shops will pour latte art on their espresso macchiatos, not content with a dull blob of milk. This frillier pour fills the espresso cup, giving a slightly milkier but still very strong, small coffee.
In a way, a latte macchiato is the exact opposite: steamed milk that has been marked by a shot of espresso. Served in a large glass, a latte macchiato is a much weaker beverage, and this points to its origins as a coffee for kids. Not wanting to over-caffeinate their young ones, Italian parents would let their kids drink a glass of warm, steamed, foamy milk flavoured with a dash of espresso, generally just half a shot. This gives a very retro looking drink with layers of white milk, espresso, and clouds of foam.
In specialty cafés, the milkiest coffee will generally be a caffè latte, made by pouring not-too-foamy steamed milk onto a single espresso in a glass. Not only does this give a prettier looking beverage with latte art, but it better incorporates the small dose of coffee into the milk, giving a more balanced, coffee forward drink.