French onion soup combines caramelized onions with a rich beef broth flavored with vermouth and thyme and topped with baguette and melted Gruyere cheese. Complex flavors and a beautiful presentation make this a great choice for dinner parties!
French onion soup, when properly made, can be a thing of beauty.
With its caramelized onion, vermouth, and beef stock combo, this soup is rich with flavor, and when topped with sliced baguette and gruyere it’s even better.
While French onion soup is widely available in restaurants, there is nothing better than the homemade version.
Since the soup itself can be made ahead of time (it’s way better made a day in advance!), it’s a great option for dinner parties. Simply add the bread and cheese, broil, and then garnish with fresh thyme before serving.
How to make it
Each number corresponds to the numbered written steps below.
- Slice 4 pounds of yellow onions thinly, from root to stem, and mince 4 cloves of garlic.
- Heat a large Dutch oven or heavy pot over medium heat with 2 tablespoons of olive oil. Add the onions, 3 ounces of water, and 1 teaspoon of salt and mix well to coat.
- Cover with a lid and let cook for 15 minutes.
- Remove the lid and add 4 tablespoons of butter and continue to cook, stirring often to avoid burning. Note: You will need to play around with your burner every so often to avoid burning. Adding a touch of water, when needed, during the caramelization process really helps.
- After 30 minutes, the onions should have reduced and appear light brown in color. Continue to cook the onions over medium heat and watch carefully to avoid burning. Adjust the heat and a touch of water as necessary.
- After another 15 minutes, the onions will continue to brown and reduce. Keep adjusting the heat and adding a splash of water when needed. Forgive me for being redundant but you do not want to mess up at this stage.
- After about an hour the onions will continue to reduce and brown. Continue to add splashes of water where necessary.
- The onions will be fully caramelized when they reach a deep caramel color. This usually happens between 60-90 minutes. Once they’re fully caramelized, add the garlic and cook for 1-2 minutes or until fragrant.
- Add 1 tablespoon of tomato paste and cook for 5 minutes, stirring frequently. If you notice any burning, add a splash of water.
- Add 1 tablespoon of all-purpose flour to the pot and cook for 2 minutes or until the flour is no longer white.
- Add 1/2 cup of dry vermouth or 1 cup of dry white wine and bring to a boil while scraping the bottom of the pan with a wooden spoon to dislodge any brown bits.
- Once boiling, add 8 cups of low-sodium beef stock and 1 tablespoon of fresh thyme leaves, mix well, and bring to a simmer. Cook at a low simmer for at least 20 minutes.
- Taste test the soup and add any salt and pepper to taste. It normally needs plenty of pepper but not too much salt, depending on the beef broth/stock/base used. Optional: Add 1 tablespoon of brandy or sherry and stir to combine.
- At this point, the soup is done and can be ladled into oven-safe crocks or stored in the refrigerator overnight for even better flavor. Cut 8-12 1/2-inch thick slices of a baguette and shred 1 1/2 cups of Gruyere cheese. Sliced Gruyere works well too along with provolone, Swiss, or even mozzarella.
- When adding the soup to the crocks, be sure to leave enough room for the bread and cheese. Top each crock with the baguette and shredded or sliced Gruyere.
- Place the crocks onto a baking sheet and place under the broiler for 2-4 minutes, or until the cheese is bubbly and brown. Garnish with fresh thyme and serve. Enjoy!
- Be patient. While French onion soup is very easy to make, it does require patience and time during the caramelization process. While it doesn’t require the continuous stirring of a Gumbo roux, it does require a good amount of stirring and for that reason, it needs to be monitored. If the onions begin to cook too quickly or start to burn, simply add a splash of water (this will bring down the pot temp) and/or reduce the heat. Do this the whole time while cooking the onions.
- Make ahead. As with all soups and stews, the flavor of French onion soup will intensify the longer it hangs out in the fridge. This is a good thing and makes this an ideal candidate for gatherings!
- Alcohol. French onion soup is known for its rich flavors, one of which is vermouth. You can also use a dry white wine in its place if you prefer. Vermouth is stronger in flavor and has a higher alcohol content than a dry white wine which is why we recommend using a full cup of wine in place of the 1/2 cup of vermouth. Paradoxically, dry vermouth will also be sweeter than dry white wines so again take it easy on the vermouth. We also add a tablespoon of brandy or sherry at the very end, but this is optional.
- Serving. While this soup is enjoyable on its own, there’s something special about serving French onion soup in crocks topped with sliced baguette and cheese. We used Gruyere for our recipe but you can use mozzarella or Swiss as well. Save some fresh thyme leaves for garnish after they come out of the broiler if desired.
More cozy soup recipes
If you’re looking for more comforting soup recipes, you’ve come to the right place. Here are a few of our favorites!
- Beef barley soup – with carrots, chunks of beef, and fresh thyme.
- Minestrone – white beans, carrots, potatoes, and kale in a tomato broth.
- Broccoli cheddar soup – creamy combo of broccoli, cheese, and cream.
If you’ve enjoyed this French onion soup recipe or any recipe on this site, give it a 5-star rating and tell us about it in the comments below.
French Onion Soup
For the caramelized onions
- 4 pounds yellow onions sliced thinly from root to stem
- 2 tablespoons olive oil
- 3 ounces water
- 1 teaspoon salt
- 4 tablespoons butter
Making the soup
- 1 tablespoon flour
- 1 tablespoon tomato paste
- 1/2 cup dry vermouth or 1 cup dry white wine
- 1 tablespoon brandy or sherry optional
- 1 tablespoon fresh thyme leaves
- 8 cups low-sodium beef stock see notes below
- 4 cloves garlic minced
- 12 slices baguette 1/2" thick, or enough to mostly cover the soup bowl
- 1 1/2 cups Gruyere sliced or shredded
- salt and pepper to taste
For the caramelized onions
- Heat a large Dutch oven or heavy pot with the olive oil over medium heat. Add the onions, water, and salt and mix to coat. Cover with the lid and cook for 15 minutes.
- Remove the lid and add the butter and continue to cook, stirring occasionally. Keep an eye on the onions and adjust the heat to avoid burning. Add a splash of water every so often to avoid burning if necessary. Full caramelization where the onions become deep brown and sweet will take about 60-90 minutes longer.
For the French onion soup
- Once the onions are deeply caramelized add the garlic and cook for 1-2 minutes or until fragrant. Add the tomato paste and cook stirring frequently for 5 minutes. If the paste begins to burn, just add a splash of water.
- Add the flour to the pot and cook for 2 minutes or until all of the flour is no longer white.
- Add the vermouth or wine and bring to a boil while scraping the bottom of the pan with a wooden spoon to dislodge all of the brown bits.
- Once boiling add the beef stock and thyme and bring to a simmer. Cook at a simmer for at least 20 minutes.
- Taste test and adjust salt and pepper to taste. Add the brandy or sherry (optional) and stir to combine. At this point, the soup is done and can be placed into crocks or stored overnight for even more flavor.
- Turn the broiler to high and set the rack so that a sheet pan with soup bowls can fit.
- Ladle the soup into oven-safe soup crocks, leaving enough room for the bread and cheese. Place the crocks onto a baking sheet and place 2 pieces of bread or enough to roughly fit 1 layer on top of each bowl. Sprinkle the Gruyere, dividing evenly into each bowl.
- Broil for 2-3 minutes or until the cheese is bubbly and browned. Garnish with thyme leaves and serve. Enjoy!
- This soup, like all soups and stews, tastes much better the next day. It is recommended to make it 1 day in advance and let it sit in the fridge overnight before broiling the soup crocks with the bread and cheese.
- Homemade beef (or chicken) stock is recommended. Box stocks can be used but they are often pretty lousy, instead, use low-sodium beef base.
- This recipe makes approximately 6 crocks of soup.
- Leftovers can be saved for up to 5 days in the fridge and can be reheated on the stovetop.
Nutrition information is automatically calculated, so should only be used as an approximation.