The definitive French bistro classic: deeply caramelised sweet onions in a rich, wine-laced beef broth, topped with a thick croûton and a blanket of bubbling, golden Gruyère. Patience and a hot grill are all you need.

French onion soup (soupe à l'oignon) is one of France's most iconic comfort foods — a deeply satisfying, intensely savoury soup built on the extraordinary transformation of raw onions into a sweet, complex, almost caramel-like mass through 45–55 minutes of patient cooking. Topped with a firm baguette crouton and a thick blanket of bubbling, golden Gruyère, it is the definitive bistro dish and one of the most rewarding recipes in French home cooking.
The process of properly caramelising onions is one of cooking's most transformative techniques — it turns a sharp, pungent vegetable into something profoundly sweet, savoury, and deeply flavoured. When combined with good beef stock, wine, and a browned cheese crust, the result is a soup of extraordinary depth from remarkably humble ingredients. It is worth every minute of the cooking time.
French onion soup works as a warming starter at a dinner party, a standalone lunch in a generous portion, or a cold-night supper. It is particularly well suited to autumn and winter and makes an impressive dish for entertaining because the individual bowls can be assembled ahead and grilled just before serving.
Never rush the onion caramelisation — 45 minutes minimum. Deglaze the pot repeatedly to incorporate the fond. Use oven-safe bowls. Pile the cheese over the bowl rim, not just the crouton. Use genuine Gruyère for the best result.
The entire flavour of the soup comes from the onions — specifically from what they become after 45–55 minutes of patient caramelisation. Use sweet onions or yellow onions; avoid red onions, which turn the broth an unpleasant purple colour.
Added after the flour to deglaze the pot and contribute acidity and complexity to the broth. Dry white wine or dry French vermouth (like Noilly Prat) are the traditional choices — both evaporate almost completely, leaving flavour behind without any raw alcohol taste.
The liquid that carries all the caramelised onion flavour — quality matters enormously. A good, rich beef stock produces a soup with a deep brown colour and full body. A thin stock produces a disappointing result regardless of how well the onions were cooked.
Switzerland's great cheese — nutty, slightly salty, and with excellent melt and browning properties. Under a hot grill, it forms a bubbling, golden, lightly charred crust that is the defining visual and textural element of the dish.
Vegetable stock replaces beef stock with 1 tablespoon of soy sauce added for umami. Comté or Emmental can replace Gruyère. Red wine can replace white wine — the broth will be darker and slightly more robust. Chicken stock works but produces a lighter, less rich result. A tablespoon of miso paste stirred into the finished broth adds umami depth when using vegetable stock.
Melt the butter with the olive oil in a large, heavy-bottomed pot (ideally enamelled cast iron) over medium heat. Add all the sliced onions and the sugar. Season with a pinch of salt. Stir to coat in the fat. Cook, stirring every 5–8 minutes, for 45–55 minutes total, until the onions are a deep, mahogany-brown colour. Reduce the heat to medium-low after the first 20 minutes. Deglaze with a tablespoon of water or wine any time the onions start sticking — scrape up the fond (browned bits) each time, as this is pure flavour. Do not rush this stage.
Stir in the minced garlic and cook for 1 minute. Sprinkle over the flour and stir constantly for 2 minutes to cook out the raw flour taste. Pour in the white wine, scraping up all the caramelised bits from the base of the pot. Let the wine bubble and reduce for 3–4 minutes until mostly evaporated.
Pour in the beef stock, add the thyme sprig, bay leaf, and brandy if using. Season with 1 teaspoon salt and 1/2 teaspoon black pepper. Bring to a boil, then reduce to a gentle simmer. Cook for 20 minutes, uncovered, for the flavours to meld and the broth to deepen. Remove the thyme sprig and bay leaf. Taste and adjust seasoning.
While the soup simmers, arrange the baguette slices on a baking tray. Toast under the grill or in a 180°C oven for 5–7 minutes, turning once, until golden and firm on both sides. They should be hard enough to sit on the soup surface without immediately sinking.
Preheat the grill to maximum. Ladle the hot soup into oven-safe bowls or ramekins, filling to about 1.5cm from the top. Float 1–2 toasted croutons on the surface. Pile the grated Gruyère generously over the top, ensuring it drapes over the edges of the bowl. Place bowls on a baking tray. Grill for 3–5 minutes until the cheese is bubbling, golden, and just beginning to char at the edges.
Techniques that separate good from great
As the onions caramelise, they repeatedly deposit a dark, sticky film on the pot base. Each time this happens, add a tablespoon of wine or water and scrape it up thoroughly. This dissolved fond is concentrated caramelised onion flavour in liquid form — adding it back to the onions deepens the final soup more than any other single technique.
A wide pot gives the onions maximum surface area contact with the heat. Covering the pot traps steam, which causes the onions to sweat and soften rather than caramelise. The moisture must evaporate for the sugar concentration to rise enough for the Maillard reaction. An enamelled cast-iron pot maintains even temperature throughout and is worth using if available.
A crouton that is too thin becomes immediately saturated by the soup and sinks. The ideal crouton is cut at least 2cm thick and fully toasted until completely firm throughout. A thick, properly dried crouton floats on the surface, supports the weight of the cheese, and provides a textural contrast to the silky soup below even after the cheese is grilled.
The iconic crust of French onion soup is formed when the cheese drapes over the rim of the bowl and welds to the bowl surface as it grills. This creates a sealed lid of browned cheese that you break through with your spoon. Cheese piled only on the crouton melts down into the soup rather than forming a crust.
Different ways to make this dish your own
Use individual ovenproof crocks, float two overlapping croutons per bowl, and use 60g of Gruyère per bowl. Grill until the cheese forms a solid, browned cap that domes slightly above the bowl rim — the classic Parisian restaurant presentation.
Replace the white wine with a full-bodied red wine (Burgundy or Bordeaux). The broth will be darker, deeper, and more tannic — an excellent variation for colder months.
Use vegetable stock, add 2 tablespoons of soy sauce and 1 tablespoon of white miso for depth. Top with vegan Gruyère-style cheese. The onion base is identical and produces a nearly indistinguishable result.
Cook the caramelised onion base without stock. Cool and blend into 300g of sour cream with salt, chives, and white pepper. The best French onion dip possible.
Perfect pairings to complete the meal
A basket of sliced baguette alongside for tearing into the soup is traditional — more bread to soak up the intensely flavoured broth.
A light, slightly bitter salad (frisée, endive, or watercress) dressed with Dijon mustard vinaigrette provides a clean counterpoint to the rich, sweet soup.
An off-dry Alsatian white wine has sufficient body and subtle sweetness to match the caramelised onion, without competing with the savoury broth.
A crisp, mineral Chablis is the Parisian bistro pairing — its acidity and salinity complement the richness of the cheese and the sweetness of the onion broth.
Keep it fresh and plan ahead
Store the soup base (without croutons or cheese) in an airtight container for up to 5 days. The flavour improves overnight.
Freeze the soup base without croutons or cheese for up to 3 months in an airtight container. Thaw overnight and reheat gently before assembling and grilling.
The soup base is ideal for making 1–2 days ahead — the onion and broth flavours meld and deepen considerably. Assemble and grill the cheese topping fresh just before serving.
Reheat the soup gently in a saucepan over medium-low heat until piping hot. Assemble in bowls with fresh croutons and cheese, then grill immediately. Do not reheat the assembled soup — the crouton becomes soggy.
Be the first to review this recipe!
Turn what you already have in your fridge into delicious meals. Our AI-powered generator creates personalized recipes from your ingredients.
Browse more like this:
Discover more delicious recipes similar to what you're cooking
Join our newsletter and discover new favorites delivered straight to your inbox. No spam, just tasty inspiration.