The Perfect French Onion Soup

Jump to Recipe

The Perfect French Onion Soup is the ultimate cozy bowl of comfort with rich caramelized onions, a splash of red wine for depth, and a bubbling crown of Gruyère-topped toast. Serve it alongside my Best Garlic Bread Recipe for extra dunking, and if you love soup season, my Broccoli Cheddar Soup and my Caramelized Onion Flatbread are two more cozy favorites.

French Onion Soup topped with golden Gruyère toasts


 

French Onion Soup at a Glance

  • 🕒 Total Time: 1 hour (10 min prep + 50 min cook)
  • 👪 Servings: 4
  • 🍝 Cuisine Type: French
  • 🧂 Flavor Profile: Deeply caramelized onions, rich beef broth, red wine, fresh thyme, and golden baguette toasts topped with melted Gruyère.
  • 📖 Dietary Info: Contains dairy and gluten. Made with beef broth; use vegetable broth for a vegetarian version.
  • 📦 Storage Notes: Refrigerate the soup in an airtight container for up to 4 days or freeze for up to 3 months. Make the Gruyère toasts fresh for serving.
  • ⭐ Why You’ll Love It: An elegant yet cozy one-pot meal that transforms humble onions into something extraordinary — the perfect make-ahead winter soup topped with golden, gooey cheese-crusted bread.

Summarize and save this content on

Why I Love This Recipe

I’ve been a French Onion Soup lover for as long as I can remember. My mom was obsessed with it, so naturally it became one of those dishes that feels like home to me. Anytime we’d see it on a menu, she’d order it without hesitation, and now I’m exactly the same way. I’ve tasted French Onion Soup just about everywhere, from cozy cafés in Paris to neighborhood spots in LA, and I’ve developed some pretty strong opinions about what makes the best one.

For me, the perfect French Onion Soup starts with an unapologetic amount of onions... sweet, deeply caramelized, and layered with flavor. (If you’re skimping on the onions, we can’t be friends.) It needs a splash of red wine to build that rich, complex base that makes the broth so addictive. And of course, it wouldn’t be complete without a thick slice of toasted bread absolutely smothered in melted Gruyère and finished with a sprinkle of fresh thyme. It’s cozy, indulgent, and exactly what I crave the moment the weather turns crisp... a big steaming bowl, a glass of red wine, and the ultimate excuse to curl up and stay in. If it's too soupy (like the broth-to-onion ratio is too high—just get right outta here!)

Jump to:
French Onion Soup with caramelized onions and Gruyère toast

If you're about to embark on the soup train for the foreseeable future like me, here are a few more of my all-time favorites: chicken tortilla soup and ribollita, just to name two.

Ingredients

Ingredients for French Onion Soup

Substitutions & Swaps

🧅 Yellow Onions

  • Sweet Onions - A good substitute for yellow onions if that's what you have. They'll bring a slightly sweeter flavor as they caramelize.
  • White Onions - Can also work in a pinch, though the finished flavor will be a little different from the yellow onions called for in the recipe.

🍷 Red Wine

  • Dry White Wine - Use a dry white wine for a lighter flavor while still getting the benefit of deglazing the caramelized onions.
  • Extra Beef Broth - If you prefer to skip the wine, use additional beef broth. The finished soup won't have quite the same depth, but it will still work.

🥩 Beef Broth

  • Beef Stock - Use in place of beef broth for an even richer base.
  • Vegetable Broth - Use a flavorful vegetable broth if you'd like to make the soup vegetarian. Keep in mind that the finished soup will be lighter than one made with beef broth.

🧀 Gruyère

  • Comté - A great substitute with a similarly nutty flavor and excellent melting qualities.
  • Emmental or Swiss Cheese - Both melt well and work when Gruyère isn't available.

🥖 Baguette

  • French Bread - Cut into slices that fit comfortably over the bowls of soup.
  • Sourdough - A sturdy alternative with a little extra tang that works well with the rich onions and Gruyère.

How to Make French Onion Soup

Butter melting in a large pot for French Onion Soup

Step 1: Melt the butter in a large pot over medium heat.

Sliced onions, garlic, bay leaves, and thyme cooking in a pot

Step 2: Add the onions, garlic, bay leaves, thyme, salt, and pepper, and cook until the onions are very soft and caramelized, about 25 minutes (if you love caramelized onions, check out my Caramelized Onion Potato Gratin).

Red wine added to caramelized onions

Step 3: Add the wine, bring to a boil, reduce the heat, and simmer until the wine has evaporated and the onions are dry, about 5 minutes.

Flour stirred into caramelized onions for French Onion Soup

Step 4: Discard the bay leaves and thyme sprigs. Dust the onions with flour and give them a stir. Turn the heat down to medium-low so the flour doesn't burn, and cook for 10 minutes to cook out the raw flour taste.

Beef broth added to caramelized onions

Step 5: Next, add the beef broth, bring the soup back to a simmer, and cook for 10 minutes. Season to taste with salt and pepper.

Baguette slices topped with shredded Gruyère

Step 6: Once the soup is done, preheat the broiler. Arrange the baguette slices on a baking sheet in a single layer. Top the toasts with the Gruyère.

Golden broiled Gruyère toasts

Step 7: Broil until bubbly and golden brown, 3 to 5 minutes.

French Onion Soup topped with Gruyère toast

Step 8: Ladle the soup into bowls and float the Gruyère toasts on top.

🧅🍷🧀 Tips & Tricks for the Best French Onion Soup

Deeply caramelized onions, rich broth, and golden Gruyère toast make this the ultimate cozy soup.

  • Take your time caramelizing the onions. This is where the soup develops so much of its flavor. Cook the thinly sliced yellow onions until they're very soft, deeply golden, and caramelized before adding the wine.
  • Don't crowd the onions into too small a pot. Give them enough room to cook down evenly, so they caramelize rather than simply steam.
  • Deglaze the pot with the red wine. As the wine cooks down, scrape up the browned bits from the bottom of the pot so all that flavor makes its way into the soup.
  • Cook the flour before adding the broth. Give it the full 10 minutes called for in the recipe so you don't end up with a raw flour taste in the finished soup.
  • Use Gruyère if you can. Its nutty, savory flavor and excellent melting quality make it especially good with the sweet caramelized onions and rich beef broth.
  • Broil the Gruyère toasts separately. Top the baguette slices with cheese and broil until bubbly and golden, then float them on the soup just before serving.
  • Make the soup ahead and the toasts fresh. French Onion Soup is a great make-ahead recipe. Reheat the soup gently, then make the Gruyère toasts just before serving so they're hot and crisp.

French Onion Soup FAQs

What kind of onions are best for French Onion Soup?

This recipe uses yellow onions, which become sweet and deeply flavorful as they caramelize. Slice them thinly and give them the full cooking time so they soften and develop plenty of color before you add the wine.

Can I make French Onion Soup ahead of time?

Yes. French Onion Soup is a great make-ahead recipe and can be prepared a day or two before serving. Store the soup in an airtight container in the refrigerator, then reheat it gently on the stove. Make the Gruyère toasts fresh and add them just before serving.

Do I have to use wine in French Onion Soup?

No. The red wine adds depth and helps deglaze the pot after the onions have caramelized, but you can use additional beef broth if you'd rather leave it out. The finished flavor will be slightly different but still delicious.

What's the best cheese for French Onion Soup?

Gruyère is the classic choice here because it melts beautifully and has a nutty, savory flavor that works especially well with caramelized onions. Comté, Emmental, or a good Swiss cheese can also work if Gruyère isn't available.

How do I keep the bread from getting soggy in French Onion Soup?

Broil the baguette slices with Gruyère separately until the cheese is bubbly and golden, then float the finished toasts on each bowl immediately before serving. Adding them at the last minute gives you that classic combination of crisp edges, melted cheese, and bread that gradually soaks up the broth.

Can I freeze French Onion Soup?

Yes. Freeze the soup without the Gruyère toasts in an airtight freezer-safe container for up to 3 months. Thaw it overnight in the refrigerator and reheat on the stove, then make fresh Gruyère toasts for serving.

How long does it take to caramelize onions for French Onion Soup?

For this recipe, cook the thinly sliced yellow onions with the butter, garlic, bay leaves, and thyme for about 25 minutes, until they're very soft and caramelized. Don't rush this step—the caramelized onions are where much of the soup's flavor develops.

If you tried this recipe, please leave a 🌟 star rating and let me know how it goes in the 📝 comments below. Thanks for visiting today

French Onion Soup from www.whatsgabycooking.com (@whatsgabycookin)

French Onion Soup

Author: Gaby Dalkin
4.9 from 14 votes
Classic French Onion Soup made with caramelized yellow onions, red wine, beef broth, fresh thyme, and baguette toasts topped with melted Gruyère.
Prep Time 10 minutes
Cook Time 50 minutes
Total Time 1 hour
Course Soup
Cuisine French
Servings 4 People

Ingredients
  

  • ¼ cup unsalted butter
  • 5 yellow onions thinly sliced
  • 4 cloves garlic finely chopped
  • 2 bay leaves
  • 3-4 fresh thyme sprigs
  • Kosher salt and freshly ground black pepper
  • 1 cup red wine
  • 3 tablespoons all-purpose flour
  • 2 quarts beef broth
  • 1 baguette sliced
  • ½ pound grated Gruyère

Instructions
 

  • Melt the butter in a large pot over medium heat. Add the onions, garlic, bay leaves, thyme, salt, and pepper, and cook until the onions are very soft and caramelized, about 25 minutes.
  • Add the wine, bring to a boil, reduce the heat, and simmer until the wine has evaporated and the onions are dry, about 5 minutes. Discard the bay leaves and thyme sprigs.
  • Dust the onions with flour and give them a stir. Turn the heat down to medium-low so the flour doesn't burn, and cook for 10 minutes to cook out the raw flour taste.
  • Next, add the beef broth, bring the soup back to a simmer, and cook for 10 minutes. Season to taste with salt and pepper.
  • Once the soup is done, preheat the broiler. Arrange the baguette slices on a baking sheet in a single layer. Top the toasts with the Gruyère and broil until bubbly and golden brown, 3 to 5 minutes.
  • Ladle the soup into bowls and float the Gruyère toasts on top.

Notes

Make sure you have soup bowls, ramekins, or mini crocks that are oven-safe. That way you can do the best part of this recipe - broiling the cheese on top!
  • Take your time caramelizing the onions. This is where the soup develops so much of its flavor. Cook the thinly sliced yellow onions until they're very soft, deeply golden, and caramelized before adding the wine.
  • Don't crowd the onions into too small a pot. Give them enough room to cook down evenly, so they caramelize rather than simply steam.
  • Deglaze the pot with the red wine. As the wine cooks down, scrape up the browned bits from the bottom of the pot so all that flavor makes its way into the soup.
  • Cook the flour before adding the broth. Give it the full 10 minutes called for in the recipe so you don't end up with a raw flour taste in the finished soup.
  • Use Gruyère if you can. Its nutty, savory flavor and excellent melting quality make it especially good with the sweet caramelized onions and rich beef broth.
  • Broil the Gruyère toasts separately. Top the baguette slices with cheese and broil until bubbly and golden, then float them on the soup just before serving.
  • Make the soup ahead and the toasts fresh. French Onion Soup is a great make-ahead recipe. Reheat the soup gently, then make the Gruyère toasts just before serving so they're hot and crisp.

Nutrition Information (estimated)

Calories: 663kcal | Carbohydrates: 50g | Protein: 31g | Fat: 33g | Saturated Fat: 19g | Polyunsaturated Fat: 2g | Monounsaturated Fat: 9g | Trans Fat: 0.5g | Cholesterol: 93mg | Sodium: 2561mg | Potassium: 682mg | Fiber: 4g | Sugar: 9g | Vitamin A: 935IU | Vitamin C: 12mg | Calcium: 716mg | Iron: 4mg
Tried this Recipe? Tag me Today!Mention @WhatsGabyCookin or tag #whatsgabycooking!
Adapted from Tyler Florence

54 Comments

  1. I am always at a loss when a recipe calls for wine without any specifics. Do you have a favorite red that you like to use with this recipe? Thanks!

  2. Made this today……..turned out great! A great warm meal for cooler weather.
    We live in Florida but we are having cooler weather right now! Thanks Ga.

  3. 5 stars
    Easy recipe with little effort. It’s so much easier this way to put the cheese on the bread and broil instead of putting into the soup and under the broiler. I made an extra batch for freezer. Only thing I changed was adding a little Parmesan.

  4. 5 stars
    Made this soup tonight. I'll admit I have ever had French Onion Soup, let alone made it but it's all moody and rainy here in Seattle, this felt right. It was an incredibly easy recipe. We have a mandolin so I killed those onions in record time. The only thing...5 onions is a ton of onions. We split the garlic, onions, bay leaves, and butter into two pots to help since it was so much in one. After the caramelizing we added everything to one and then moved on with the recipe. Again, so easy. We followed put our soup in my new cutie crocks and put it under the broiler that way. I've pinned this and will definitely make it again. Great recipe!

  5. 5 stars
    This was SO good. Everyone loved it. The onions took a bit longer for me than 25 but it was worth the wait. This will definitely be made again at our house!

  6. This is incredible. I used Bone broth instead cause i had it on hand. Wasnt as oily as the resturants serve and soooo tasty. Thank you again Gaby you kill it every time for me.

4.86 from 14 votes (7 ratings without comment)

Leave a Reply

Your email address will not be published. Required fields are marked *

Recipe Rating