Soups & Stews
This 7 onion soup recipe transforms humble onions into a symphony of caramelized sweetness and savory depth—exactly as Parisian bistros serve it. 🌟 The secret lies in slow, patient caramelization that develops complex flavors, followed by a golden Gruyère topping that bubbles into perfection when baked.
I've perfected this technique over years of testing, ensuring every spoonful delivers that perfect balance of sweetness, umami, and rich broth.
The foundation of great French onion soup begins with onions—layer upon layer of them—cooked low and slow until they're deep golden and jammy. This process takes time (about 45 minutes), but it's worth every moment as the onions transform from sharp to sweet.
The broth simmers with beef stock and aromatics, while the bread toasts until crisp before being topped with melted Gruyère. The result? A restaurant-quality soup that feels like a warm hug in a bowl.
What makes this recipe truly special is the contrast between textures: tender onions in rich broth, crispy toasted bread, and gooey melted cheese on top. The Gruyère develops a beautiful crust while staying creamy underneath, creating that signature golden blanket that makes onion soup irresistible.
It's the kind of dish that transforms a simple weeknight dinner into an elegant experience worthy of any gathering.
Serve this classic with a crisp green salad to balance the richness, or offer crusty bread on the side for extra dipping. The leftovers reheat beautifully, making it perfect for meal prep.
Here's how to create this timeless French masterpiece in your own kitchen—step by step, just like the bistros do it.
Ingredients for 7 onion soup
Seven onions, slow caramelization, and a golden Gruyère topping create bistro-quality French onion soup.
| Ingredient | Amount | Notes |
|---|---|---|
| Yellow Onions 🧅 | 7 whole | Yellow or sweet onions preferred |
| Extra-Virgin Olive Oil 🫒 | ½ cup | High-quality for caramelization |
| Unsalted Butter 🧈 | 6 tbsp | European-style preferred |
| Beef Stock 🥫 | 6 cups | Homemade or high-quality jarred |
| Dry White Wine 🍷 | ½ cup | Sauvignon Blanc recommended |
| Fresh Thyme 🌿 | ¼ cup | Stems removed, chopped |
| Garlic Cloves 🧄 | 4 cloves | Minced for aromatic base |
| Salt 🧂 | 1 ½ tsp | Diamond Crystal preferred |
| Black Pepper 🌶️ | ½ tsp | Freshly ground for heat |
| Baguette 🍞 | 1 whole | Crusty, day-old preferred |
| Gruyère Cheese 🧀 | 2 cups | Freshly grated from block |
| All-Purpose Flour 🌾 | 2 tbsp | For bread topping |
The onions are non-negotiable—yellow or sweet onions work best for their natural sweetness. Whole Foods or Trader Joe's carry perfect onions, but any grocery store will do. Look for firm, dry onions with crisp outer skins—they'll caramelize beautifully. The key is patience: cook them low and slow until they're deep golden and jammy. I always double-check the color—it should be like caramel, not browned. The Gruyère matters too; Whole Foods has the best selection of aged wheels, but any specialty cheese shop will carry it.
No white wine? Chicken stock with a splash of apple cider vinegar works in a pinch. Fresh thyme is ideal, but dried thyme at half the amount gets you close. The baguette should be crusty—day-old works best—but if you're in a hurry, Trader Joe's sells pre-sliced baguettes that toast perfectly. For the Gruyère, pre-grated cheese lacks flavor, so always grate it yourself from a block. The butter should be European-style—it has higher fat content and melts beautifully for caramelization.
Store the caramelized onions in an airtight container in the fridge for up to 5 days. The bread topping stays crispy for 2 days if kept in a sealed container. Assemble the soup just before serving—this keeps the bread from getting soggy. Leftovers reheat beautifully; just add a splash of broth to restore moisture. The Gruyère topping reheats well too, though it's best fresh from the oven. For meal prep, store components separately and assemble when ready to serve.
Why You'll Love This Recipe
- Pantry Stash Magic: I swear by this recipe because it uses what I already have—no last-minute grocery runs. Caramelizing those yellow onions until they’re deep golden? That’s where the flavor happens, and it only takes patience (not skill). The wine deglazes the pan like a pro move, but honestly, I’m just stirring while I scroll through my phone.
- Umami Bomb: The beef stock and butter create this rich, savory depth that’s hard to beat. That crispy onion top? It’s the star—crunchy, caramelized perfection that makes every bite feel like a little reward. Between us, I’ve had fancier soups that couldn’t compete.
- Weeknight or Guest Night: Same recipe, different vibes. Slurp it up solo with crusty bread on a Tuesday or serve it in mugs when friends drop by. The wine in the base adds a touch of elegance, so it feels fancy without the fuss. My roommates didn’t even notice I used a cheap bottle.
- Leftovers That Don’t Suck: Most soups turn sad the next day, but not this one. The flavors actually deepened—the onions keep their sweetness, and the broth gets even more comforting. I freeze portions for lazy days, and reheating? Just a splash of water, a quick stir. No sad, watery soup here.
Step-by-step instructions for 7 onion soup
Master the art of deep caramelization and rich layers for soup that delivers both comfort and elegance.
🔥 Step 1: Caramelize the Onions Slowly
Heat a large Dutch oven over medium-low heat and add the 0.5 cup extra-virgin olive oil and 6 tbsp unsalted butter. Peel and halve the 7 whole yellow onions lengthwise, leaving the root intact to keep them stable. Place them cut-side down in the pot, arranging them in a single layer if possible.
Cover with a lid and cook for 30 minutes without stirring. This gentle approach allows the onions to release moisture and begin caramelizing evenly. After 30 minutes, lift the lid and carefully flip each onion half. Reduce heat to medium-low and continue cooking uncovered for another 30 minutes, stirring once halfway through if needed. You're aiming for deep golden brown color—this is where the magic happens.
If the onions start to brown too quickly in spots, reduce heat further. The goal is slow, even caramelization that develops complex sweetness. This step typically takes 1-1.5 hours total. Real talk: patience here separates good soup from extraordinary soup.
🍳 Step 2: Build the Flavor Base
Once the onions are beautifully caramelized, add the 4 minced garlic cloves and 0.25 cup chopped fresh thyme. Cook for 2 minutes until fragrant—you'll smell that aromatic punch of garlic and thyme mingling with the caramelized onions. This is your flavor foundation.
Deglaze the pot by pouring in the 0.5 cup dry white wine, scraping up all those delicious browned bits from the bottom. Let it simmer for 3 minutes until mostly evaporated. Then add the 6 cups beef stock and bring to a gentle simmer. Season with 1.5 tsp salt and 0.5 tsp black pepper, then reduce heat to maintain a bare simmer.
Partially cover the pot and let the soup cook for 20-25 minutes, allowing flavors to meld. The onions should be tender but still hold their shape. Taste and adjust seasoning—you might need a touch more salt to balance the sweetness from the caramelization.
🥘 Step 3: Prepare the Gruyère Bread Topping
While the soup simmers, cut the 1 whole baguette into ½-inch thick slices. You'll need about 12-16 slices total. In a small bowl, toss the baguette slices with the 2 tbsp all-purpose flour until lightly coated on both sides.
Melt 2 tbsp unsalted butter in a large skillet over medium heat. Working in batches, toast the flour-dusted bread slices for 1-2 minutes per side until golden brown and crispy. Transfer to a paper towel-lined plate to drain excess butter. Keep warm until ready to use.
In a separate bowl, mix the 2 cups freshly grated Gruyère cheese with 1 tbsp chopped fresh thyme and ½ tsp black pepper. This cheese mixture will become your golden topping.
🔥 Step 4: Assemble and Bake to Perfection
Preheat your broiler to high. Ladle the hot soup into four oven-safe bowls or ramekins, filling each about ¾ full. Top each serving immediately with 3-4 toasted baguette slices, followed by ½ cup of the Gruyère cheese mixture. The cheese should melt immediately from the heat of the soup.
Place the bowls on a baking sheet and broil for 2-3 minutes until the cheese is bubbly and deeply golden brown. Watch carefully—you want that beautiful toasted cheese effect without burning. The bread should be crispy underneath while the cheese on top melts into a luscious blanket.
Serve immediately with a spoon for stirring and additional bread slices on the side. Each bite should deliver layers of caramelized onion sweetness, rich beef broth depth, and that irresistible Gruyère crunch-melt contrast. The soup continues to improve as it sits, so make it fresh when ready to serve.
Pro Tips For Making 7 Onion Soup
- Sweat, Don’t Burn: Start your onions on medium-low heat with a splash of water—just enough to deglaze the pan. I learned this the hard way after charring three batches; the soup ended up bitter, and no amount of wine could fix it. Keep them moving, and resist the urge to rush.
- Use Butter First: Melt the unsalted butter before adding olive oil—it coats the onions better and prevents sticking. I was skeptical until I tried it; the onions caramelize more evenly, and the soup tastes richer without overpowering the wine.
- Deglaze Aggressively: After caramelizing the onions, pour in the white wine all at once and scrape the fond off the bottom with a wooden spoon. That browned bit is flavor gold, and skipping it means missing out on the depth the recipe promises.
- Strain for Smoothness: If you want a silky soup, strain the onions after cooking—just don’t skip the wine reduction. I used to leave them in, but the texture was too chunky. A fine-mesh sieve does the trick, and you can always add a few cooked onions back for texture if you’re feeling fancy.
Troubleshooting this dish
Onions Too Sharp?
If your caramelized onions taste too sharp or raw, you likely didn't cook them long enough. The key is patience—onions need 45-60 minutes of slow cooking to develop sweetness. If they're still pungent, return them to the pot over low heat for another 15-20 minutes, stirring occasionally.
Add a pinch of sugar (about ½ tsp) to help accelerate caramelization. 🌟
Broth Too Thin?
A watery broth usually means the onions released too much moisture during caramelization. To fix this, simmer the soup uncovered for 10-15 minutes to reduce the liquid. If it's still too thin, mash 1-2 extra caramelized onions into the broth to thicken it naturally.
For a quicker fix, stir in 1 tbsp cornstarch mixed with 1 tbsp cold water and simmer until thickened.
Cheese Not Melting?
If your Gruyère isn't melting smoothly, it might be too cold or the soup isn't hot enough. Always use freshly grated cheese (pre-grated contains anti-caking agents that prevent melting). Before broiling, ensure the soup is steaming hot—this helps the cheese melt evenly.
For extra insurance, sprinkle a pinch of nutmeg (about ¼ tsp) into the cheese mixture—it lowers the melting point slightly. 🧀
Bread Getting Soggy?
Soggy bread happens when the topping isn't crisp enough or the soup is too hot. To prevent this, toast the baguette slices until golden and crisp, then let them cool slightly before placing them on the soup.
For extra protection, brush the underside of each slice with melted butter before toasting—this creates a barrier against moisture. Assemble the soup right before serving to maintain crispness.
Onions Burning?
Burnt spots on onions mean the heat was too high. Always cook onions over medium-low heat and reduce to low if they start browning too quickly. If they've already burned, remove the burnt pieces and continue cooking the rest.
For future attempts, use a heavy-bottomed pot (like a Dutch oven) to distribute heat evenly. A splash of water or stock can also help mellow the flavor if they over-brown. 🔥
Flavor Too Mild?
If your soup lacks depth, it might need more umami or acidity. Boost flavor by adding 1 tsp Worcestershire sauce or ½ tsp fish sauce to the broth. For brightness, stir in 1 tbsp apple cider vinegar or a squeeze of lemon juice at the end.
If the onions are under-seasoned, sprinkle extra salt (about ¼ tsp) or black pepper directly on top before serving for a quick punch of flavor.
Nutrition facts
Frequently asked questions
Can I use fewer onions for this recipe?
The 7 onions are essential for authentic flavor and texture. Each onion contributes to the layered sweetness and depth of the caramelization. For a lighter version, you could reduce to 5 onions, but the soup will be less rich and complex. The onions should be the star of this dish!
What if I don't have Gruyère cheese?
Gruyère is ideal for its nutty, melty qualities, but you can substitute with Comté, Emmental, or even a mix of sharp cheddar and mozzarella. For a vegan option, use nutritional yeast mixed with cashew cream and a pinch of turmeric for color. The key is to get that golden, bubbly topping!
How long can I store the caramelized onions?
Store them in an airtight container in the fridge for up to 5 days or freeze for 3 months. They reheat beautifully—just warm them in a pan with a splash of stock or water. The onions actually taste better after resting, as flavors deepen over time. Perfect for quick soup prep!
Can I make this soup ahead of time?
Prepare the soup base (without the bread topping) up to 2 days ahead and store it in the fridge. Reheat gently on the stove, then assemble with fresh toasted bread and cheese just before serving. The flavors will have even more time to meld, making it even more delicious. Just add a splash of broth if it thickens too much.
Why does my soup taste bland?
Blandness often comes from under-seasoned onions or broth. Boost flavor by adding 1 tsp Worcestershire sauce or ½ tsp fish sauce to the broth. For brightness, stir in 1 tbsp apple cider vinegar or a squeeze of lemon juice at the end. Taste as you go—French onion soup should balance sweet, savory, and umami perfectly!
