French Onion Soup
- By Jennifer Segal
- Updated October 10, 2025
- 266 Comments
- Leave a Review
This post may contain affiliate links. Read my full disclosure policy.
Rich, caramelized onions simmered in a savory broth and topped with golden, melty cheese—this French onion soup is pure comfort.

French onion soup might be a staple on restaurant menus, but it started as a humble peasant dish made from just onions, stale bread, and water. Today, it’s a bit more refined but still wonderfully simple to make at home. The secret is patience: the onions need to cook low and slow until they’re deeply caramelized and sweet. I like to add a touch of flour to slightly thicken the broth and finish the soup with two kinds of cheese—techniques I picked up while working in a restaurant renowned for its incredible French onion soup recipe.
“I made this last night and it was amazing! I think it was even better than the French onion soup we had in Paris last summer.”
What You’ll Need To Make French Onion Soup

- Butter and vegetable oil: Used to caramelize the onions (the oil prevents the butter from burning).
- Vidalia (or sweet) onions: Lend a naturally sweet, mild flavor when caramelized.
- Sugar: Helps amplify the natural sweetness of the onions and aids in caramelization.
- Dry white wine: Deglazes the pan, dissolving the fond for a deep, complex flavor.
- All-purpose flour: Thickens the broth for a slightly hearty consistency.
- Beef broth, Worcestershire sauce, dried thyme, and bay leaves: Form the savory, aromatic base of the soup—rich, deep, and full of umami.
- Baguette: Serves as the base for the cheesy croutons.
- Dry sherry: Adds a layer of complexity and a slightly sweet, nutty finish to the broth.
- Gruyère and Parmigiano Reggiano: Melt into a golden, bubbling layer with creamy, nutty flavor and a hint of sharpness. For the best results, look for authentic imported cheeses—Gruyère should have “AOC” on the label, and the parm should say “Parmigiano Reggiano,” not “Parmesan,” to ensure you’re getting the real thing.
- Jump to the printable recipe for precise measurements
Step-by-Step Instructions
Step 1: Caramelize the onions. Melt the butter in a large Dutch oven or soup pot over medium heat. Add the oil, onions, salt, pepper, and sugar. Cook, stirring occasionally, until the onions are a deep golden brown and completely caramelized, about 50 minutes. Don’t rush this step—properly caramelized onions should be soft and rich in color. Your kitchen will smell amazing.

Step 2: Deglaze. Pour in the wine and cook, stirring with a wooden spoon to loosen the browned bits from the bottom of the pan—there’s tons of flavor there. Continue cooking until the liquid is almost gone and the onions are jammy.

Step 3: Thicken the base. Add the flour and stir for about a minute, just until it disappears into the onions—this helps thicken the broth and give it some body later on.

Step 4: Build the broth. Add the broth, Worcestershire sauce, thyme, and bay leaves to the pot. Bring to a boil, then reduce the heat and simmer for about 30 minutes. Once done, add the sherry.


Step 5: Toast the bread. While the soup simmers, arrange the baguette slices on a baking sheet in a single layer. Bake until crisp and golden, about 10 minutes, then set aside to cool.

Step 6: Assemble the crocks. Heat the broiler and place the soup crocks on a baking sheet for easy handling. Ladle the hot soup into the crocks, then top each with a toasted baguette slice and a generous handful of cheese.


Step 7: Broil and serve. Slide the crocks under the broiler and cook until the cheese is bubbling and golden brown, 2 to 4 minutes. Let the soups cool for a few minutes before serving—they’ll be piping hot and perfectly melty.

Video Tutorial
You May Also Like
Classic French Onion Soup
Ingredients
- 4 tablespoons unsalted butter
- 1 tablespoon vegetable oil
- 3 lbs Vidalia (or sweet onions) (about 5 medium), halved lengthwise and thinly sliced
- ¾ teaspoon salt
- ½ teaspoon freshly ground black pepper
- ¾ teaspoon granulated sugar
- 1 cup dry white wine
- 2 tablespoons all-purpose flour
- 6 cups beef broth
- 1 teaspoon Worcestershire sauce
- ½ teaspoon dried thyme
- 2 bay leaves
- 1 small baguette, cut into ½-in (13-mm) slices
- 1 tablespoon dry sherry
- 8 oz Gruyère cheese grated (about 2 heaping cups; look for one imported from Switzerland)
- ½ cup grated Parmigiano Reggiano
Instructions
- In a large Dutch oven or soup pot, melt the butter over medium heat. Add the oil, onions, salt, pepper, and sugar. Cook, uncovered, stirring occasionally with a wooden spoon, until onions are deep golden brown and caramelized, 45 to 55 minutes. In the beginning, you will only need to stir the onions occasionally. As they start to brown midway through cooking, you will need to stir them frequently, scraping the fond (the brown particles) from the bottom of the pan. If the onions are browning too quickly, reduce the heat slightly or add a few tablespoons of water to deglaze the pan and continue cooking.
- Add the wine and raise the heat to high. Cook, stirring with a wooden spoon to scrape any fond from the bottom of the pan, until almost all of the liquid has evaporated and the onions are jammy, 8 to 10 minutes.
- Add the flour and cook, stirring constantly, for one minute.
- Add the broth, Worcestershire sauce, thyme, and bay leaves to the pot. Bring to a boil, reduce the heat to a simmer, and cook, covered, for about 30 minutes.
- While the soup simmers, preheat the oven to 400°F (205°C) and set an oven rack in the middle position. Arrange the baguette slices in a single layer on a baking sheet and bake until the bread is dry, crisp, and golden at edges, about 10 minutes. Set aside.
- When the soup is finished, remove the bay leaves and add the sherry; taste and adjust seasoning if necessary. If the soup needs a deeper flavor, try a few shakes of Worcestershire sauce. If it's not quite sweet enough, add ¼ teaspoon sugar.
- Adjust an oven rack 6 in (15 cm) from the broiler element and heat the broiler. Place the oven-proof crocks on a baking sheet (see note below if you don’t have oven-proof crocks). Fill them with very hot soup, top each with 1 or 2 baguette slices without overlapping, and sprinkle evenly with Gruyère and Parmigiano Reggiano. Broil until the cheese is melted and bubbly around the edges, 3 to 5 minutes. Let the crocks cool for a few minutes before serving.
Notes
- If you don’t have oven-proof soup crocks, place the toast slices on a baking sheet, top each with cheese, and broil for about 2 minutes, until the cheese is melted. Divide the hot soup among regular bowls and top each serving with the cheese toasts.
- Make-Ahead Instructions: The soup can be made and refrigerated up to 3 days ahead (without toasts or cheese), or frozen for up to 3 months. The toasts can be made (without the cheese) and kept sealed at room temperature for up to 3 days.
Nutrition Information
This website is written and produced for informational purposes only. I am not a certified nutritionist and the nutritional data on this site has not been evaluated or approved by a nutritionist or the Food and Drug Administration. Nutritional information is offered as a courtesy and should not be construed as a guarantee. The data is calculated through an online nutritional calculator, Edamam.com. Although I do my best to provide accurate nutritional information, these figures should be considered estimates only. Varying factors such as product types or brands purchased, natural fluctuations in fresh produce, and the way ingredients are processed change the effective nutritional information in any given recipe. Furthermore, different online calculators provide different results depending on their own nutrition fact sources and algorithms. To obtain the most accurate nutritional information in a given recipe, you should calculate the nutritional information with the actual ingredients used in your recipe, using your preferred nutrition calculator.
See more recipes:
Add a Comment Cancel reply
This site uses Akismet to reduce spam. Learn how your comment data is processed.





OMG pure heaven. I made homemade beef broth by roasting meaty bones the last night and then putting the roasted meaty bones into a crock pot with veges to cook for 15 hours, overnight. The mouth-feel of a homemade beef broth is heads-and-tails above store bought. I used it for this recipe today and WOW I don’t think I’ve ever had a better French onion soup. I topped it with one slice lacy baby Swiss and then shredded Gruyère for the final pizazz. Yeah, I’ll be making this again and again and again.
I have not yet made this French Onion Soup. I will be making it tomorrow and will let you know how it turns out.
Dang this is delicious! Did take me a lot longer than expected for the onions but it’s worth it. So good!
Thank you, Jenn! Delicious recipe and though time consuming, very easy to make. We had an extra bag of sweet onions and I craved French Onion soup. After scanning the comments, instead of 3/4, I added 1/2 tsp Splenda sugar substitute and a hefty red onion to avoid sweetness and to ensure a savory outcome. Used Edam cheese vs. Gruyere and dry Marsala vs. sherry only because I had those in stock. I followed recipe exactly otherwise. I do believe the Gruyere cheese would have been the penultimate choice but everyone devoured this soup and requested seconds.
Sounds delicious the way it is! I will be making it this weekend for the games! Thank you!😋👏
I’ve been to France several times and never had a French onion soup that tasted this good. I didn’t have sherry so I used balsamic vinegar. I also cut it in half as it’s just 2 of us, fantastic!
Wasn’t able to get that dark brown color on the onions & didn’t have thyme, and I still thought this recipe hit the mark. I’ll definitely make it again.
Can I triple recipe or do batch by batch
Hi Joleen, I think you could triple this, but keep in mind that you’ll need a very large pot for the onions — they shrink a ton as they cook, but initially you’ll have a large volume of them.
Amazingly flavourful and instructions are lovely and specific.
This soup is fantastic! I used to use a Tyler Florence recipe but this one is better! Definitely restaurant quality. I used yellow onion instead of sweet onions because I don’t like it sweet and it was perfect. Thanks for another great recipe!
Hello,
Is there a way to not use any alcohol for this recipe?
Hi Emi, It’s fine to leave the alcohol out. You may just want to add a tablespoon of lemon juice for a touch of acidity. Hope you enjoy!