Soups & Stews
This copycat French onion soup recipe delivers the same restaurant-quality depth you'd expect from a Parisian bistro—rich caramelized onions, tender beef broth, and a golden blanket of melted Gruyère.
The secret lies in slow-cooking onions until they're deep amber and sweet, then building layers of umami through careful beef broth reduction. I've perfected this technique over years of testing, ensuring every spoonful captures that perfect balance of savory, sweet, and cheesy.
The process begins with 3 pounds of yellow onions caramelized for 45 minutes until they're soft, sweet, and deeply colored—this is where the magic happens.
A slow-simmered beef broth infused with thyme and garlic forms the heart of the soup, while a crispy baguette slice serves as the perfect vessel for the melted cheese topping. The result is a soup that's both comforting and elegant, with each component playing its part in harmony.
What sets this recipe apart is the Gruyère cheese topping, which melts into velvety clouds when broiled—just like in Parisian restaurants. The combination of caramelized onions, tender beef, and nutty Gruyère creates a flavor profile that's hard to resist.
Whether you're serving it as an appetizer or a main course, this soup is designed to impress without sacrificing simplicity.
For those looking to modernize the classic, optional twists include using sous-vide beef for extra tenderness or vegan cheese alternatives for a plant-based version. The core technique remains the same, ensuring authenticity while allowing for personal customization. Ready to recreate this bistro favorite at home?
Ingredients for copycat french onion soup
Sixteen ingredients transform into bistro-quality French onion soup with caramelized depth and Gruyère clouds.
| Ingredient | Amount | Notes |
|---|---|---|
| Yellow Onions 🧅 | 3 lb | Sweet varieties preferred, peeled and quartered |
| Beef Broth 💧 | 8 cups | Homemade or high-quality store-bought |
| Gruyère Cheese 🧀 | 2 cups | Freshly grated, aged 12+ months preferred |
| Baguette Slices 🍞 | 6 whole | Crusty, day-old preferred for crispiness |
| Unsalted Butter 🧈 | ½ cup | European-style preferred for flavor |
| Garlic Cloves 🧄 | 4 cloves | Fresh, minced for infusion |
| Fresh Thyme 🌿 | ¼ cup | Leaves only, chopped finely |
| Dry White Wine 🍷 | 1 cup | Sauvignon Blanc or Chardonnay |
| Beef Tenderloin 🥩 | 1 lb | Sous-vide preferred for tenderness |
| Olive Oil 🫒 | 2 tbsp | Extra-virgin for caramelization |
| Salt 🧂 | 2 tsp | Kosher or sea salt |
| Black Pepper 🌶️ | 1 tsp | Freshly ground for best flavor |
| Bay Leaves 🍃 | 2 whole | Removed before serving |
| Chicken Stock 🍲 | 2 cups | Low-sodium preferred |
The yellow onions are the foundation—3 pounds of sweet varieties like Vidalia or Maui work best. Look for firm, dry onions with crisp edges at Whole Foods or your local market. The key is patience: slow cooking until deep amber releases their natural sugars. For the Gruyère, seek aged varieties (12+ months) from specialty cheese shops—Murray's Cheese or Di Bruno Bros carry excellent options. Freshly grated melts far better than pre-shredded. The beef tenderloin should be trimmed of fat and cut into thin strips—Costco or butcher counters offer the best quality for this dish.
No white wine? Dry vermouth or apple cider works in a pinch, but the acidity matters. Substitute Gruyère with Comté or Emmental if unavailable, though the flavor will differ slightly. For a vegetarian version, use mushroom broth and beef-free stock, but the caramelization process remains identical. The baguette slices should be crusty—Schar or La Baguette brands from the bakery section work perfectly. If you can't find fresh thyme, dried thyme at one-third the amount suffices, though fresh is ideal for that authentic aroma.
Store caramelized onions in the fridge for up to 3 days in an airtight container—they're perfect for quick soups later. The Gruyère should be kept in its original packaging until ready to grate, then used immediately for best results. Broiled cheese topping reheats beautifully—cover with foil after broiling to prevent over-browning. Portion into individual ramekins for elegant serving, or use a deep baking dish for a family-style presentation.
Why You'll Love This Recipe
- One-Pot Magic: I swear by this—just onions, broth, and butter simmering together until the kitchen smells like heaven. No fancy gadgets, no stress, and honestly, the hardest part is waiting for the cheese to melt.
- Golden Crust Promise: That crispy baguette top with oozy Gruyère underneath? It’s the kind of bite that makes you pause mid-slurp. I’ll be real: first try, I burned it, but now I nail it every time—worth the practice.
- Weeknight to Dinner Party: Same recipe feeds two or six. Make a double batch on Sunday, reheat for lunch, or impress guests with zero extra effort. (Yes, even on a Tuesday night.)
- Budget Warmth: Beef broth stretches far, Gruyère’s affordable in blocks, and you’re left with leftovers that taste better the next day. My wallet and I both approve—plus, it’s cheaper than takeout.
Step-by-step instructions for French onion soup
Here's how to recreate the iconic restaurant-style French onion soup at home.
Caramelize the Onions Slowly
Heat the 2 tablespoons olive oil in a large Dutch oven over medium-low heat. Add the 3 pounds yellow onions, peeled and quartered, spreading them out in an even layer. Cook undisturbed for 5 minutes to develop a light golden color, then stir gently to prevent burning.
Continue cooking for 45-60 minutes, stirring occasionally, until the onions turn a deep amber color with a rich, sweet aroma. This slow process is crucial—it transforms the onions into a jam-like consistency that forms the soul of the soup. If they start to brown too quickly, reduce the heat slightly. You'll know they're ready when they look like thick caramel and smell intensely sweet.
Build the Flavor Base
Once the onions are perfectly caramelized, increase the heat to medium and add the 0.5 cup unsalted butter. Stir to melt it completely, then add the 4 minced garlic cloves, 0.25 cup fresh thyme, 2 whole bay leaves, 2 teaspoons salt, and 1 teaspoon black pepper. Cook for 2 minutes until fragrant, stirring constantly to prevent burning the garlic.
Deglaze the pot with the 1 cup dry white wine, scraping up all the browned bits from the bottom. Let it simmer for 3-4 minutes until the wine reduces by half. This step intensifies the flavors and removes any raw alcohol taste. Then add the 8 cups beef broth and 2 cups chicken stock, bringing everything to a gentle simmer. Let it cook uncovered for 20 minutes to allow the flavors to meld together.
Prepare the Baguette and Cheese
While the soup simmers, preheat your broiler to high. Cut the 6 whole baguette slices into ½-inch thick pieces. Brush both sides lightly with olive oil and toast them in a single layer on a baking sheet for 3-4 minutes until golden brown. Set aside.
Grate the 2 cups gruyère cheese using a box grater or food processor. For the best texture, use freshly grated cheese—pre-shredded cheese contains anti-caking agents that prevent proper melting. Keep the cheese at room temperature until ready to use.
Assemble and Broil the Soups
Ladle 1 cup of the hot soup into each of 6 oven-safe bowls or ramekins. Place 1 toasted baguette piece on top of each soup portion, pressing down gently to help it absorb some of the liquid. Immediately sprinkle ⅓ cup of the grated gruyère cheese over each baguette slice, pressing it lightly so it adheres.
Transfer the bowls to a baking sheet for stability and broil for 2-3 minutes until the cheese bubbles and turns golden brown. Watch closely—the cheese can go from perfect to burnt in seconds. The baguette should be crispy underneath while the cheese forms a bubbly, golden cloud on top.
Serve Immediately
Remove the bowls from the oven and let them rest for 1 minute before serving. The cheese should be melted and slightly stretchy, with a crispy crust on top. Serve each portion with a soup spoon and a small side salad to cut through the richness.
This soup is best enjoyed immediately while the baguette stays crispy and the cheese maintains its perfect melt. The combination of deep caramelized onions, rich beef broth, and melted gruyère creates a harmonious balance of sweet, savory, and umami flavors that's hard to resist. Leftovers can be reheated gently on the stove, but the broiled cheese topping will need to be added fresh before serving.
Pro Tips For Making Copycat French Onion Soup
- Sweat, Don’t Burn: Onions should caramelize, not char. Use medium-low heat and let them cook for 30-40 minutes until deep amber—yes, it takes time. I learned this the hard way after rushing and ending up with bitter, blackened bits that ruined the whole pot.
- Salt the Broth Early: Season the beef broth before adding it to the onions. Unsalted butter and caramelized onions already pack flavor, so a well-seasoned broth keeps the soup from tasting flat. Trust me, your taste buds will notice the difference.
- Skip the Pre-Cooked Baguette: Toast the baguette slices fresh while the soup simmers—don’t use store-bought croutons. The crispy crust forms in seconds under the broiler, and the bread stays sturdy enough to hold the cheese. (Yes, even if you’re impatient like me.)
- Grate Cheese Twice: Gruyère melts beautifully, but a mix of coarse and fine shreds gives the soup that restaurant-quality texture. Pulse half in a food processor for smoothness, then hand-grate the rest—it makes all the difference when the cheese stretches over the bread.
Regional styles of this recipe
Parisian Bistro Style
In Parisian bistros, the key is slow-cooked onions and beef broth that simmers for hours. I use a Dutch oven to caramelize 3 pounds of onions for 60 minutes until deep amber, then deglaze with 1 cup dry Sauvignon Blanc.
The broth is built with 8 cups rich beef stock and 2 bay leaves, simmered for 2 hours to develop depth. Serve in individual ramekins with a Gruyère cloud broiled to perfection. 🍷
Lyon's Hearty Twist
Lyon adds lardons (diced bacon) and mushrooms to their version, creating a richer, meatier profile. I brown 6 oz lardons first, then set aside before caramelizing onions. After adding broth, I stir in 1 cup sliced cremini mushrooms and simmer for 15 minutes to absorb flavors.
Top with Gruyère and a sprinkle of parsley for a rustic touch. 🍄
New York City Adaptation
For a quicker version, New Yorkers often use store-bought caramelized onions and pre-made beef broth to save time. I still insist on freshly grated Gruyère and a crispy baguette for authenticity.
Add a dash of Worcestershire sauce to the broth for extra umami depth—this is my go-to shortcut for busy weeknights. ⏰
Vegetarian Provence
Provence transforms the classic with mushroom and leek broth instead of beef. I caramelize 4 pounds of leeks with 2 pounds mushrooms until jammy, then build flavor with white wine and thyme.
Top with vegan Gruyère (like Violife) or nutritional yeast for a cheesy finish. The result is just as comforting, with earthy depth. 🌱
Modern Sous-Vide Approach
For next-level tenderness, I use sous-vide beef in the broth. Thinly slice 1 lb beef tenderloin, vacuum-seal with garlic and thyme, and cook at 145°F for 4 hours.
Strain the meat and shred it, then add back to the broth. The result is silky texture without overpowering the onions. Perfect for impressing guests! 💫
Nutrition facts
Frequently asked questions
Why do the onions need to caramelize for so long?
Slow caramelizing for 45-60 minutes transforms the onions into sweet, jam-like bits that form the soup's foundation. This process develops deep Maillard reactions, creating complex flavors that store-bought versions can't match.
Can I use pre-made caramelized onions?
While it saves time, pre-made onions lack the depth of homemade caramelization. For best results, make your own—but if you must substitute, choose high-quality versions with no added sugar and simmer them with the broth for 15 minutes to meld flavors.
How do I prevent the cheese from burning when broiling?
Keep a close eye on the broiler—2-3 minutes max! Use a baking sheet under the ramekins for stability, and watch for golden bubbles. If it starts browning too quickly, move it further from the heat source or cover briefly with foil.
What's the best way to make this vegetarian?
Replace beef broth with mushroom-leek broth and omit the beef tenderloin. Use vegan Gruyère (like Violife) or nutritional yeast for the topping. The caramelization process remains identical—just swap the protein source for umami-rich mushrooms.
Can I make this ahead of time?
Yes! Prepare the soup base up to 2 days ahead and store it in the fridge. Reheat gently on the stove, then add fresh baguette and cheese just before broiling. The caramelized onions can also be made 3 days ahead and stored in an airtight container.
