Soups & Stews
This all-day French onion soup recipe delivers the ultimate comfort food experience—layers of caramelized onions, rich beef broth, and perfectly toasted bread topped with melted Gruyère.
The slow caramelization of onions develops deep, sweet flavors that form the heart of this classic, while the velouté sauce creates a velvety texture that feels like a warm hug in a bowl.
What sets this version apart is the technique: onions cooked low and slow for hours, beef broth reduced to concentrate its depth, and bread cubes toasted until golden and crispy.
The secret to restaurant-quality results lies in patience and layering flavors. You'll start by cooking onions for at least 2 hours (longer is better) until they're deep amber and jammy, then build a rich beef broth base that can be made ahead and reheated.
The velouté sauce ties everything together with its creamy, savory profile, while the cheese topping adds a final touch of indulgence. This recipe is designed for those who appreciate the slow, satisfying process of creating a dish that tastes even better the next day.
By the time you serve this soup, you'll have a bowl that's creamy, aromatic, and packed with texture—crispy bread cubes floating in a sea of caramelized onions and velvety sauce. The melted cheese on top adds a gooey, golden finish that makes it impossible to resist.
It's the kind of dish that feels like a celebration, whether you're serving it to a crowd or treating yourself to a cozy night in.
The beauty of French onion soup is its versatility—it reheats beautifully, making it perfect for meal prep or leftovers. You can also customize it with different cheeses (Swiss or Emmental work well) or add a sprinkle of fresh thyme for brightness.
This is comfort food at its finest, and once you try it, you'll understand why it's a staple in kitchens around the world.
Ingredients for all day french onion soup
Six hours of caramelized onions meet creamy velouté and crispy bread—this is comfort food at its finest.
| Ingredient | Amount | Notes |
|---|---|---|
| Yellow Onions 🧅 | 4 whole | Peeled, sliced thin for caramelization |
| Unsalted Butter 🧈 | ½ cup | Full-fat for rich flavor development |
| Beef Broth 💧 | 6 cups | Homemade or high-quality store-bought |
| All-Purpose Flour 🌾 | 2 tbsp | For velouté sauce thickening |
| Heavy Cream 🥛 | 1 cup | Full-fat for velvety texture |
| Gruyère Cheese 🧀 | 1 ½ cups | Freshly grated for best melt |
| Baguette 🍞 | 1 whole | Crusts removed, cubed small |
| Fresh Thyme 🌿 | 1 tbsp | Chopped, leaves only for aroma |
| Garlic Cloves 🧄 | 4 cloves | Minced for velouté sauce |
| Olive Oil 🫒 | 2 tbsp | For bread toasting |
| Salt 🧂 | 2 tsp | Kosher or sea salt |
| Black Pepper 🌶️ | ½ tsp | Freshly ground preferred |
| White Wine 🍷 | ½ cup | Dry variety for depth |
| Chicken Stock 🍲 | 2 cups | For velouté base |
The onions are non-negotiable. Yellow onions with a good papery skin work best—avoid red or white for this dish. I grab mine from Whole Foods or the fresh produce section at Trader Joe's (their organic ones are perfect). For the butter, Plugrá is my go-to—it's European-style and handles the long cooking time beautifully. The key is patience: these onions need at least 2 hours of slow cooking until they're jammy and deep amber. Don't rush it. The Gruyère? Look for a block—pre-grated gets clumpy and doesn't melt as beautifully. If you can't find Gruyère, Comté or Emmental work in a pinch.
No wine? Substitute extra chicken stock—just add an extra splash of balsamic vinegar for acidity. Fresh thyme is ideal, but dried works at one-third the amount. The baguette should be fresh—crusts off, cubed small—so they toast evenly. For the velouté, I always use all-purpose flour (not cake flour) because it gives a nice, smooth texture. If you're making this ahead, prepare the caramelized onions and velouté sauce first—they keep beautifully in the fridge for up to 3 days. The bread cubes can be toasted fresh before serving.
This soup tastes even better the next day—the flavors meld overnight. Store the caramelized onions and velouté separately in airtight containers for up to 5 days. To reheat, gently warm the velouté on the stove, then assemble with the onions and toast the bread cubes fresh. The cheese topping should be added just before serving so it stays gooey. For make-ahead convenience, portion the soup without cheese—add the cheese and toast the bread cubes when ready to serve. Freezes beautifully for up to 3 months if you want to prep for a crowd.
Why You'll Love This Recipe
- Here’s what sold me: that deep, golden sweetness from slow-cooked onions until they’re almost jammy. The beef broth ties it all together, rich and savory, while the heavy cream at the end? Pure, velvety perfection.
- One-Pot Magic: I swear by this recipe because it’s actually just one pot—no chopping boards full of mess. You caramelize those onions right in the Dutch oven, then dump in the broth and flour, stir, and let it simmer. Minimal cleanup, maximum flavor.
- Caramelized Bliss: Here’s what sold me: that deep, golden sweetness from slow-cooked onions until they’re almost jammy. The beef broth ties it all together, rich and savory, while the heavy cream at the end? Pure, velvety perfection.
- Weeknight or Weekend: This soup works anytime—dump it together on a Tuesday for a quick dinner, or make a big batch on Sunday for leftovers. It reheats beautifully, and honestly? The taste only gets better the next day as the flavors meld.
Step-by-step instructions for all day French onion soup
Let's create a rich, comforting French onion soup that starts with deep caramelization and ends with perfectly toasted bread and melted cheese.
Caramelize the Onions Slowly Over Low Heat
Melt the 0.5 cup unsalted butter in a large Dutch oven over medium-low heat. Add the 4 whole yellow onions, peeled and sliced thin, spreading them out in a single layer. This is where patience pays off - let them cook undisturbed for 30 minutes, stirring occasionally, until they turn a deep golden brown. You'll see the onions shrink dramatically and develop that sweet, jammy texture we're after.
Here's the thing - if you rush this step, you'll end up with bitter onions instead of sweet, caramelized ones. The key is low heat and time. After about 20 minutes, add the 2 tsp salt and 0.5 tsp black pepper to help draw out moisture and enhance flavor. You'll know it's ready when the onions are so tender they almost melt in your mouth and have that beautiful amber color.
Build the Velouté Sauce with Wine and Stock
Once your onions are perfectly caramelized, stir in the 2 tbsp all-purpose flour and cook for 2 minutes to remove the raw flour taste. Pour in the 0.5 cup white wine and scrape up any browned bits from the bottom - this is called deglazing and captures all that delicious flavor. Let it simmer for 3 minutes until the wine mostly evaporates.
Now add the 2 cups chicken stock and 6 cups beef broth, bringing everything to a gentle simmer. Stir in the 4 cloves minced garlic and 1 tbsp chopped fresh thyme. Let this mixture cook uncovered for 20 minutes to develop depth of flavor. The sauce should be rich and aromatic - you'll smell that wonderful onion aroma filling your kitchen.
Finish with Cream and Prepare the Bread
Reduce the heat to low and stir in the 1 cup heavy cream. Let it warm through for 5 minutes without boiling - we want to maintain that velvety texture. Taste and adjust seasoning if needed, adding more salt or pepper as necessary. The soup should be creamy but not overly thick - if it's too thick, you can thin it with a splash of broth.
While the soup simmers, cut the 1 whole baguette into 1-inch cubes, removing the crusts first. Toss the bread cubes with 2 tbsp olive oil and spread them on a baking sheet. Toast them in a 400°F oven for 8-10 minutes until golden brown and crispy. This step is crucial - perfectly toasted bread is the foundation of great French onion soup.
Assemble and Melt the Cheese
Preheat your broiler to high. Ladle the hot soup into oven-safe bowls, placing 3-4 toasted bread cubes in each one. Top each serving generously with 1.5 cups freshly grated Gruyère cheese - about ¼ cup per bowl. The cheese should be freshly grated for the best melt and flavor.
Place the bowls on a baking sheet and broil for 3-5 minutes until the cheese is bubbly and golden brown on top. Watch it carefully - you want that beautiful cheese crust to form without burning. The cheese should melt completely, creating that irresistible gooey layer on top of the soup. Serve immediately while the bread is still crisp and the cheese is molten hot.
Pro Tips For Making All Day French Onion Soup
- SWEEP THE POT: I used to rush the caramelization and end up with a thin, watery base—don’t. After the onions soften, scrape up every last bit of browned goodness from the bottom with a wooden spoon. That’s where the flavor hides, and skipping it means missing half the depth.
- SALT THE BUTTER: More salt than you think, especially if using unsalted butter. Taste it before adding onions—aim for a pinch per tablespoon of butter. This balances the sweetness later and keeps the broth from tasting flat, even if you’re using low-sodium broth.
- DON’T BOIL THE BROTH: Simmer, don’t boil. Once the broth goes in, keep it at a gentle bubble—hard boiling makes the onions taste bitter and weakens the stock. I learned this the hard way after a dinner party where the soup tasted like it was made from tea.
- TOAST THE FLOUR: Cook the flour in butter for 2-3 minutes before adding broth. This removes its raw taste and gives the soup a richer, nuttier base. Sounds small, but it’s the thing that makes homemade taste like a bistro, not a shortcut.
Storing and reheating this dish
Refrigerator Storage
Store your caramelized onions and velouté sauce separately in airtight containers for up to 5 days—this keeps their flavors vibrant. I use glass Pyrex containers with tight-sealing lids for best results.
The onions will continue caramelizing slightly, deepening their sweetness over time. Keep the bread cubes in a separate container, and toast them fresh before serving to maintain crispiness. 🥄
Freezer Prep Tips
For longer storage, freeze the caramelized onions and velouté sauce in quart-sized freezer bags—leave 1 inch of headspace to prevent expansion cracks. Label with the date, as this soup freezes beautifully for up to 3 months.
Thaw overnight in the fridge before reheating. I never freeze the bread cubes—they lose their texture when thawed. 🧊
Reheating Perfection
Gently reheat the velouté sauce on the stovetop over low heat until warmed through—never microwave, as it can break the creamy texture. Stir occasionally and add 1-2 tbsp broth if it thickens too much.
The caramelized onions can be reheated directly in the sauce or warmed separately in a small pan with a splash of butter. 🔥
Bread Cube Revival
Toast bread cubes fresh before serving to restore their crisp texture. Toss them with 1 tbsp olive oil and toast in a 400°F oven for 5-7 minutes until golden.
For extra flavor, sprinkle with a pinch of garlic powder or dried thyme while toasting. This step makes all the difference in that satisfying crunch. 🍞
Cheese Strategy
Add the cheese just before serving—it melts beautifully under the broiler for 3-5 minutes at high heat. If reheating leftovers, place the cheese on top of the hot soup and broil until bubbly.
For extra richness, top with a sprinkle of fresh thyme or a drizzle of truffle oil after broiling. 🧀
Make-Ahead Assembly
Assemble the soup without cheese up to 24 hours ahead—store in the fridge and broil the cheese fresh when ready to serve. This works perfectly for meal prep!
For a crowd, prepare the components separately and let guests assemble their own bowls at the table. It’s a fun interactive twist that keeps the bread crisp. ✨
Nutrition facts
Frequently asked questions
Can I make this French onion soup vegetarian?
Replace the beef broth with mushroom or vegetable broth and use vegetable stock instead of chicken stock. For extra richness, add 1 tbsp soy sauce or miso paste to the caramelized onions. The umami depth will compensate for the lack of meaty flavor. Gruyère can be swapped for vegan cheese alternatives that melt well.
How do I prevent the bread cubes from getting soggy?
Toast the bread cubes just before serving—they should be golden and crisp. The key is to use a hot oven (400°F) and toss them with olive oil for extra crispiness. If reheating leftovers, toast fresh cubes rather than relying on pre-toasted ones. Serve the soup in shallow bowls so the bread sits above the liquid rather than submerged.
What's the best cheese alternative to Gruyère?
If you can't find Gruyère, try Comté, Emmental, or Swiss cheese—they melt beautifully and add nutty depth. For a sharper flavor, use Parmigiano-Reggiano mixed with mozzarella. Avoid pre-shredded cheeses—they contain anti-caking agents that prevent proper melting. Freshly grating makes all the difference in texture and flavor.
Can I make this soup in a slow cooker?
Yes, but with adjustments! Caramelize the onions on the stovetop first, then transfer to a slow cooker with all ingredients except the bread cubes and cheese. Cook on low for 4-5 hours, stirring occasionally. Add the bread cubes and cheese just before serving, toasting under the broiler. The slow cooker method works best for the velouté but won't achieve the same crispy bread texture.
Why does my French onion soup taste bland?
Blandness usually comes from under-seasoning or insufficient caramelization. - Cook onions at least 2 hours for deep sweetness
- Use high-quality broth (homemade is ideal)
- Season with extra salt and pepper during cooking
- Add a splash of white wine or balsamic vinegar for acidity The velouté should be rich and aromatic—if it's watery, reduce it longer or add a pat of butter at the end.
