99 French Onion Soup Recipe: Crispy Gruyère Crowns Over Rich Caramelized Broth

Soups & Stews

99 French Onion Soup Recipe: Crispy Gruyère Crowns Over Rich Caramelized Broth

This 99 French onion soup recipe delivers the ultimate comfort food experience—layers of rich caramelized onions, tender beef broth, and a golden, crispy crown of melted Gruyère cheese. The secret lies in slow-cooking onions until they're deep amber and sweet, then simmering them in a deeply flavorful beef stock.

What makes this version special is the perfect balance of textures: silky broth, perfectly toasted bread, and that irresistible crunch from the broiled cheese.

Mastering French onion soup starts with patience—caramelizing onions for at least 45 minutes transforms their natural sweetness into a complex, almost jam-like consistency. The beef broth should be rich and well-seasoned, built with aromatics like thyme and bay leaf.

This isn't just soup; it's a restaurant-quality dish that transforms any kitchen into a Parisian bistro.

By the time you broil the cheese-topped bread, you'll have a dish that's crispy on top, tender beneath, and packed with umami flavor in every spoonful. The cheese pulls into a golden crust while keeping the bread perfectly toasted, creating that signature French onion soup experience.

It's the kind of meal that feels indulgent yet satisfying, perfect for chilly evenings or special occasions.

While traditional recipes call for beef broth and Gruyère, modern twists include vegetarian versions with mushroom broth or vegan cheese alternatives. The technique remains the same—slow caramelization and careful broiling—to ensure that crispy cheese crown every time. Let's get started on creating this timeless classic.

👨‍🍳
Difficulty
Medium
🥩
Diet
Meat
🔥
Calories
Med Cal

Ingredients for 99 french onion soup

Four pounds of onions, a golden cheese crown, and the patience for perfect caramelization.

Ingredient Amount Notes
Yellow Onions 🧅 4 lb Sweet variety preferred, thinly sliced
Unsalted Butter 🧈 ¾ cup European-style preferred for flavor
Beef Broth 🍲 6 cups Homemade or high-quality store-bought
Gruyère Cheese 🧀 2 cups Freshly grated from block, not pre-shredded
Baguette 🍞 1 whole Crusty, day-old preferred for texture
Fresh Thyme 🌿 2 sprigs Or 1 tsp dried thyme if fresh unavailable
Bay Leaves 🌿 2 whole Remove before serving
Garlic Cloves 🧄 4 cloves Minced for depth of flavor
Dry White Wine 🍷 ½ cup Sauvignon Blanc or Chardonnay
Salt 🧂 1 ½ tsp Diamond Crystal preferred
Black Pepper 🌶️ ½ tsp Freshly cracked preferred
Olive Oil 🫒 2 tbsp For bread toasting
All-Purpose Flour 🌾 ½ cup For bread dredge

The onions are the heart of this dish—yellow sweet onions caramelize best, turning deep amber after 45 minutes of slow cooking. European-style butter adds richness that regular butter can't match. For the best broth, use a homemade beef stock or Kitchen Basics brand from the store—nothing beats that deep umami flavor. Gruyère is non-negotiable here; Cowgirl Creamery or Miyoko's vegan alternative if needed. The baguette should be crusty—Brioche works too, but traditionalists insist on the classic texture.

No white wine? Chicken broth with a splash of apple cider vinegar mimics the acidity. Fresh thyme is ideal, but dried works at one-third the amount. The flour for the bread dredge can be swapped for cornstarch if gluten-free is needed. Gruyère too expensive? Comté or Emmental work in a pinch. For extra richness, add 1 tbsp heavy cream to the broth. The key is balancing sweetness from the onions with the savory broth—taste as you go, and adjust with salt or a splash more wine.

Store the broth base in the fridge for 4-5 days or freeze for 3 months. The cheese-topped bread toasts best fresh, but you can assemble the whole soup ahead and broil just before serving. For a crispier crown, broil on high for 3-4 minutes until bubbly and golden. Leftovers? The broth reheats beautifully—just skip the cheese crown until serving. The bread gets soggy if stored with broth, so assemble it last for that signature crunch.

❤️

Why You'll Love This Recipe

  • One-Pot Magic: I swear by this recipe—just caramelize onions in butter, simmer with broth, and toast the bread. No extra pans, no fuss. The hardest part is waiting for the cheese to melt into golden perfection.
  • Caramelized Bliss: That slow cook of onions until they’re deep amber and sweet? It’s where the soul of this soup lives. The beef broth deepens it into something rich, while the Gruyère adds a nutty, melty finish that’s dangerously addictive.
  • Weeknight Crowd-Pleaser: I make this for everything—game days, sick friends, or just because. The baguette soaks up the broth like a dream, and it’s the kind of dish where even picky eaters ask for seconds. (Yes, even my teenage son.)
  • Budget-Friendly Luxury: Onions are cheap, broth is cheap, and a block of Gruyère stretches far. I’ve fed six people for under $15, and they all leave happy. The leftovers? Just as good the next day—if they last that long.

Step-by-step instructions for French onion soup

Transform humble onions into golden, caramelized magic—this is where the real alchemy happens.

1

Caramelize the Onions to Perfection

Heat a large Dutch oven over medium-low heat and add the 0.75 cup unsalted butter. Let it melt completely, then add the 4 lb yellow onions in even layers, stirring occasionally. This gradual approach prevents burning and ensures even cooking.

Cook for 45-60 minutes until the onions turn a deep amber color and are completely softened. You'll know they're ready when they look like liquid gold and smell intensely sweet—almost like syrup. Real talk: this is the moment that matters. Don't rush it. If you see any brown spots, reduce the heat immediately to prevent burning.

Once the onions are caramelized, stir in the 4 cloves minced garlic and cook for another 1 minute until fragrant. The garlic should perfume the onions without browning. Remove from heat and set aside—we'll return to these later.

2

Build the Rich, Flavorful Broth

Increase the heat to medium-high and add 2 tablespoons olive oil to the same Dutch oven. Sprinkle in the 0.5 cup all-purpose flour and whisk vigorously for 1-2 minutes until it turns a nutty golden color. This creates a roux that will thicken our soup beautifully.

Slowly pour in the 0.5 cup dry white wine, stirring constantly to prevent lumps. Let it simmer for 2 minutes until the alcohol smell dissipates. Then, gradually whisk in the 6 cups beef broth until smooth. Add the 2 sprigs fresh thyme, 2 whole bay leaves, 1.5 teaspoons salt, and 0.5 teaspoon black pepper.

Return the caramelized onions to the pot and bring everything to a gentle simmer. Let it cook uncovered for 15-20 minutes to allow flavors to meld. You want the soup to be rich and aromatic—almost like a perfume. Taste and adjust seasoning if needed. This is your flavor base, so don't skimp on the seasoning.

3

Prepare the Crispy Gruyère Crowns

Preheat your broiler to high. Cut the 1 whole baguette into 1-inch thick slices. Brush each slice generously with 2 tablespoons olive oil on both sides, then place them on a baking sheet. Broil for 2-3 minutes until golden and crispy—watch them closely to prevent burning.

While the bread toasts, grate the 2 cups Gruyère cheese using a box grater or food processor. You want it finely grated so it melts smoothly into a creamy blanket. Place the grated cheese in a small bowl and set aside.

Once the bread is toasted, place a slice on top of each soup bowl. Spoon about 1.5 cups of the hot onion soup over the bread, then generously sprinkle with the grated Gruyère cheese. Pop the bowls under the broiler for 2-3 minutes until the cheese is bubbly and golden brown—this is where the crispy crowns form. The cheese should look like a molten volcano, ready to crown your soup.

4

Serve Immediately for Maximum Impact

Remove the bowls from the broiler and let them sit for 1-2 minutes to allow the cheese to set slightly. The cheese should be gooey inside but with a crispy, golden exterior—this is what makes French onion soup legendary.

Serve immediately, making sure each spoonful delivers that perfect balance of rich, caramelized onion broth and crispy, cheesy bread. The contrast between the warm soup and the crispy cheese crown is what makes this dish unforgettable. Pair it with a simple green salad and a glass of the same white wine you used in the recipe for a complete experience.

Pro tip: If you're making this ahead of time, prepare the soup base up to Step 2 and reheat it gently before assembling the cheese crowns. The caramelized onions keep well, and you can toast the bread separately. But trust me, nothing beats serving this fresh from the broiler.

👨‍🍳

Pro Tips For Making 99 French Onion Soup

  • SWEAT THE ONIONS LOW AND SLOW: I learned this the hard way—when you pile chopped onions into a pot and blast them with heat, you end up with a bitter, watery mess. Instead, cook them over medium-low for at least 20 minutes, stirring occasionally, until they’re deep golden and caramelized. The butter will foam and darken—don’t rush it, or you’ll regret the flavor.
  • USE GRUYÈRE, NOT ANY CHEESE: That pre-shredded cheese in the grocery store? Skip it. Gruyère’s nutty, slightly sweet flavor is non-negotiable here. If you’re in a pinch, combine 70% Gruyère with 30% Comté—it’ll still taste better than the stuff in a bag. And for the love of soup, grate it yourself; pre-shredded cheese has anti-caking agents that make the topping grainy.
  • DON’T SKIP THE BAGUETTE TOAST: The difference between a good French onion soup and a great one is that crispy, cheesy baguette lid. Cut the bread into thick slices (about ½-inch) and toast them in the oven at 375°F (190°C) for 5-7 minutes before adding cheese—this locks in moisture and prevents a soggy bottom. Then, pile on the cheese and broil until it’s bubbling and golden.
  • SAVE TIME WITH COLD BROTH: No need to wait for the broth to cool before adding it to the onions. Just pour it in while the onions are still hot—it’ll heat up as it simmers. If you’re really short on time, use a splash of cold water to deglaze the pot first, then add the broth. The onions will still caramelize; you’re just skipping a step.

Dietary considerations for this recipe

Vegetarian Adaptations

Skip the beef broth and use a rich mushroom broth (simmer 8 oz dried shiitake mushrooms with 6 cups vegetable broth) for depth. Replace Gruyère with nutritional yeast (½ cup) mixed with vegan mozzarella (1½ cups) for that cheesy melt.

The caramelized onions remain the star—just ensure your broth has enough umami from soy sauce or miso paste. 🌱

Gluten-Free Options

Swap the all-purpose flour for ½ cup cornstarch when making the roux—it thickens just as well without gluten. Use a gluten-free baguette (like Schär brand) for the bread crown, and check your Gruyère label for cross-contamination warnings.

The soup itself stays naturally gluten-free once the flour is removed. Always verify broth labels too—some contain hidden wheat.

Dairy-Free Cheese

For a dairy-free crown, blend 1 cup raw cashews with ½ cup water, 1 tbsp nutritional yeast, and 1 tsp lemon juice until smooth. Spread this mixture on toasted bread before broiling.

It won’t crisp like Gruyère, but it adds a creamy, savory layer. Pair with a vegan butter (like Miyoko’s) for extra richness in the caramelization step. 🧀✨

Low-Calorie Tweaks

Lighten the soup by using low-fat beef broth (like Pacific brand) and reducing butter to ¼ cup. Opt for whole-grain baguette (like Dave’s Killer Bread) for fiber, and top with lightly toasted garlic powder instead of extra cheese.

The caramelized onions still deliver flavor without excess calories—just watch your portion sizes.

Allergy-Friendly Notes

For nut allergies, use a seed-based cheese alternative (like almond-free cashew-free options from Follow Your Heart). If thyme is an issue, swap for rosemary or oregano—both complement onions beautifully.

Always check labels on broth and cheese substitutes for hidden allergens like soy or dairy derivatives. When in doubt, make it from scratch with single-ingredient swaps.

Nutrition facts

Servings 4
Amount Per Serving
Calories 580kcal
% Daily Value *
Total Fat 32g41%
Saturated Fat 18g90%
Cholesterol 95mg32%
Sodium 1520mg66%
Total Carbohydrate 52g18%
Dietary Fiber 6g21%
Sugars 12g
Protein 22g44%
* Percent Daily Values are based on a 2,000 calorie diet. Your daily values may be higher or lower depending on your calorie needs.

Frequently asked questions

1

Why do the onions need to caramelize for so long?

Slow caramelization for 45-60 minutes transforms onions from sharp to sweet and jam-like, creating the dish's signature depth. The long cook time breaks down natural sugars, developing complex flavors that regular sautéing can't match. Patience here makes all the difference in that rich, golden broth!

2

Can I make this soup ahead of time?

Prepare the broth base up to Step 2 and store it in the fridge for 4-5 days or freeze for 3 months. Toast the bread and grate the cheese separately—assemble and broil just before serving to keep that perfect crispy crown. The caramelized onions actually taste better the next day!

3

What if my cheese crown isn't crispy?

Broil on high heat for 3-4 minutes until bubbly and golden—watch closely to avoid burning. For extra crispiness, use freshly grated Gruyère (not pre-shredded) and broil right before serving. If it's still soft, try toasting the bread longer first. The key is timing and heat!

4

Can I use a different type of cheese?

Gruyère is ideal, but Comté or Emmental work well too. For extra richness, mix with a little Parmesan. Avoid pre-shredded cheese—it contains anti-caking agents that prevent proper melting. If you're vegan, try a cashew-based cheese blend for the best texture.

5

How do I make it vegetarian?

Replace beef broth with a mushroom broth (simmer 8 oz dried shiitake with 6 cups vegetable broth) and use nutritional yeast mixed with vegan mozzarella for the cheese crown. The caramelized onions remain the star—just boost umami with a splash of soy sauce or miso.

★★★★★4.9(10 reviews)
Categories Soups & Stews