Classic French Onion Soup
French onion soup is one ingredient and one hour of patience. Everything else — the wine, the stock, the raft of Gruyère — is scaffolding around onions that have been cooked far longer than feels reasonable.
★ At a glance
- Serves: 4 as a main, 6 as a starter
- Prep: 20 minutes
- Cook: about 1 hour 45 minutes
- Hands-on: the caramelisation needs checking every 5 minutes
- Difficulty: easy technique, long timeline
Before you start
Set aside an unhurried afternoon. Onions do not caramelise in fifteen minutes on high heat; they scorch, and scorched onion is bitter in a way no amount of stock will cover. Low and slow is not a suggestion here, it is the recipe.
Use a wide, heavy pot. Surface area is what lets the water evaporate so the sugars can brown, and a heavy base is what stops them catching.
What you’ll need
For the soup
- 1.1 kg yellow onions (about 6 large), halved and sliced 5 mm thick
- 45 g butter plus 1 tbsp neutral oil
- 1 tsp salt, plus more to finish
- 2 tbsp plain flour
- 180 ml dry white wine or dry sherry
- 1.5 litres good beef stock
- 2 sprigs thyme and 1 bay leaf
- 1 tbsp brandy, optional
- Plenty of black pepper
For the top
- 1 baguette, sliced 2 cm thick and toasted hard
- 200 g Gruyère, coarsely grated
Step by step
- Melt the butter with the oil in a wide heavy pot over medium heat. Add the onions and the salt. They will mound above the rim — cover and let them sweat down for 15 minutes.
- Uncover, turn the heat to medium-low and cook for 45–60 minutes, stirring every 5–8 minutes and scraping the brown film off the base each time. You are looking for deep mahogany and a jammy texture. If they threaten to catch, splash in a tablespoon of water and scrape.
- Stir in the flour and cook it out for 2 minutes.
- Pour in the wine, scraping hard. Simmer until it has almost disappeared, 3–4 minutes.
- Add the stock, thyme and bay. Simmer uncovered for 30 minutes. Fish out the herbs, taste, season, and stir in the brandy if using.
- Heat the grill (broiler). Ladle into oven-safe bowls, float one or two toasts on each and mound the Gruyère so it spills over the rim of the bowl.
- Grill for 3–5 minutes until bubbling and blistered in patches. Warn everyone: the bowls are dangerously hot.
Where it usually goes wrong
- Heat too high. Brown is sweet, black is bitter, and there is no way back.
- Weak stock. A cube dissolved in water gives you thin, salty soup. Use a proper stock, or fortify a decent one with a splash of soy sauce and a parmesan rind dropped in at step 5.
- Cheese sliding into the soup. Pile it over the edge of the bowl so it grips the rim as it melts.
- Soggy bread. Toast the slices until genuinely dry and hard before they go anywhere near liquid.
Leftovers and reheating
The soup base is better on day two. Keep it in the fridge for up to four days or freeze it for three months. Never store it assembled — bread and cheese go on at the last minute, every time.
Common questions
Can I use red onions or shallots?
Stick with yellow onions. Red ones turn a muddy colour and shallots are expensive for the volume you need here.
Is there a vegetarian version?
Yes, and it is good: mushroom stock instead of beef, a teaspoon of soy sauce, and a parmesan rind simmered in for depth. Use a vegetarian hard cheese if that matters to you.
I don’t have oven-safe bowls.
Grill the cheese-topped toasts on a baking tray, then float them on the soup as you serve.
How far ahead can I make it?
The base can be made three days ahead. The flavour improves.
About this recipe: written by the Bold Story editorial team from classic technique, given in metric and US measures. Times are a guide — pans, ovens and hob output vary, so cook to the cues described rather than to the clock. See our Editorial Policy.