Craving a bowl of French onion soup from your favorite bistro? You can easily make it at home. With a bit of patience and a few simple ingredients, this French onion soup recipe delivers rich broth, deeply caramelized onions, and that irresistible cheesy toast on top.

I love soup, especially in cold weather, and French onion soup is a special favorite. At restaurants you sometimes get a hastily made version that lacks depth, so I used to think a great bowl was too hard to recreate at home. In truth, the key is slow, patient caramelization of the onions. Most of the time is hands-off, and the result is worth it: sweet, soft onions, a savory beefy broth, and a golden, bubbling cheese crust.

Bistro-style French onion soup at home
If you know how to caramelize onions, you’re already halfway there. Caramelized onions create the soup’s signature sweet base while a robust beef stock supplies savory depth. Finish each bowl with a slice of toasted bread and melted gruyère for that classic French bistro look and flavor.
This recipe works for a cozy family dinner or to impress guests at a dinner party. It’s approachable, but it rewards patience. Read through the ingredients and steps, then plan on about an hour of cook time, most of which is low-maintenance caramelizing.

How to make this French onion soup
The most important step is caramelizing the onions slowly and evenly. Below are the ingredients, equipment, and step-by-step instructions to make a flavorful, restaurant-style French onion soup at home.
Ingredients you’ll need
To make this French onion soup, you will need:
- 5 large yellow onions
- 4 large shallots
- 3–4 tablespoons olive oil
- 3 tablespoons salted butter
- 1 tablespoon all-purpose flour
- ¼ cup dry Marsala (or dry sherry)
- 3 quarts beef stock
- ½ tablespoon beef base (low-sodium preferred)
- 2 sprigs fresh thyme
- 2 fresh bay leaves
- Salt and pepper to taste

I like a mix of onions and shallots for complexity; yellow onions are a reliable choice and offer good caramelization. Marsala adds a lovely depth — dry sherry is a fine substitute. Using store-bought beef stock is convenient; a small amount of concentrated beef base boosts flavor without hours of simmering. For serving, you’ll need oven-safe bowls if you plan to broil the cheese directly on top.
For serving:
- 6 thick slices rustic bread (sourdough, French, or Italian)
- Room-temperature salted butter for toasting
- 2 cups grated gruyère cheese (or Swiss/fontina if unavailable)
- Thinly sliced fresh chives (optional)

Equipment
- 6-quart Dutch oven or a large heavy-bottomed pot
- Oven-safe soup bowls (if broiling the cheese)
- Skillet or griddle for toasting bread
- Sharp knife or mandoline for even slicing
Making the soup
1. Prep: Peel the onions and shallots, halve them, and slice to about 1/8-inch thickness. Even slices caramelize more evenly.
2. Sweat: Heat the oil in the Dutch oven over medium heat. Add the onions and shallots with a few pinches of salt and cook, stirring occasionally, until they become translucent.
3. Caramelize: Add the butter and reduce heat to low. Stir every few minutes as the onions slowly brown and develop deep caramel color. This takes about 45–60 minutes. If they begin to stick, add a splash of water to loosen the fond.
4. Deglaze and thicken: Stir in the flour, then pour in the Marsala, scraping the bottom of the pot to deglaze. Cook until slightly thickened.
5. Simmer: Add the beef stock, beef base, thyme, and bay leaves. Bring to a simmer over medium heat, then allow to simmer, uncovered, for 20–30 minutes. Remove thyme stems and bay leaves, then taste and adjust seasoning with salt and pepper.

Serving French onion soup
1. Preheat your oven broiler and move the oven rack to the top position.
2. Butter both sides of each bread slice and toast in a skillet over medium-high heat until golden. Alternatively, use a toaster oven.
3. Place oven-safe bowls on a rimmed baking sheet and ladle soup to just over halfway. Top each bowl with a slice of toast and a generous handful of grated gruyère.
4. Broil until the cheese is melted and browned in spots — this takes only a few minutes, so watch closely. Garnish with chives and serve immediately.

Make-ahead tips
You can make the soup base up to 3 days ahead: cool and refrigerate in an airtight container. Reheat gently on the stove, then assemble and broil the cheese to serve.
This soup also freezes well for up to 2 months. Thaw overnight in the fridge before reheating.

Serving suggestions
French onion soup works well as a starter or as an entree. Pair it with a simple salad, roasted vegetables, or a main like a roasted chicken or steak. For a lighter course, serve smaller bowls with a crisp green side salad.

Frequently asked questions
Yes. Substitute high-quality vegetable stock for the beef stock and use a vegetable bouillon or mushroom base for extra umami. The flavor will be different but still delicious.
Toast the bread and melt the cheese in a toaster oven, then place the toasts on top of each bowl. You can also serve the cheese and croutons on the side for guests to add themselves.
Yes. Omit the flour or use a gluten-free flour, and serve with certified gluten-free bread. Make sure any concentrated bouillon or base you use is labeled gluten free.
Nutrition (approximate)
Per serving (estimate): Calories: 502 kcal; Carbohydrates: 33 g; Protein: 27 g; Fat: 29 g; Sodium will vary depending on stock and bouillon used—adjust with low-sodium options if desired.
Homemade French Onion Soup
This classic French onion soup balances sweet, caramelized onions with savory beefy broth and a gratinéed cheese topping. Follow the steps and enjoy a cozy, restaurant-quality bowl at home.