This easy French onion soup recipe will rival any you've had at a restaurant. Topped with crispy, cheesy baguette, it's rich, savory, and comforting.
French onion soup is one of my favorite comfort foods. For years, I hadn’t been able to find a good vegetarian version of it, because it’s traditionally made with beef broth. But since caramelized onions are what make it so flavorful, it seemed like a prime candidate for a meat-free makeover. After lots of testing (and lots of soup), I’m here to tell you that this French onion soup recipe is just as good as any made with beef stock. Swimming with velvety caramelized onions, it’s bold, savory, and delicious.
To make it, I turn to my go-to ingredients for adding meaty flavor to plant-based recipes: tamari and balsamic vinegar. As with my veggie burgers and vegan meatballs, they make this soup taste wonderfully savory and tangy. To amp up the flavor further, I add a generous amount of white wine, along with aromatic thyme and garlic. Then, I finish it all off with a classic French onion soup essential: toasty baguette topped with melty cheese!
How to Make French Onion Soup
First, caramelize the onions. Caramelized onions are what give French onion soup its sweet, rich flavor, so cook the onions for longer than you think you need to, about 1 hour. They should be very soft and golden brown before you move on to the next step. For extra browning, I like to raise the heat from low to medium for the last 20 minutes.
Next, simmer the soup. Add the vinegar, thyme, tamari, and garlic to the onions, and stir, scraping up any browned bits stuck to the bottom of the pot. Stir in a few tablespoons of flour, which will thicken the soup as it cooks, and then add the wine. Finally, add the broth and simmer the soup, uncovered, for 30 minutes.
Then, toast the bread. Top thin slices of baguette or French bread with grated cheese and bake them in a 450° oven until the baguette is toasted and the cheese is melted. For the best results, use a good melting cheese with a rich, nutty taste. I like Gruyere cheese or a combination of aged white cheddar and Parmesan.
And finally, eat! When the bread is ready, ladle the soup into bowls. Top each one with a toasted slice of bread and thyme sprigs, and enjoy!
French Onion Soup Recipe Tips
- Slice your onions thinly. French onion soup is best when thin slices of onion almost melt into the hot broth, so you don’t want big onion chunks in this recipe. Use the sharpest knife you have to slice the onions into thin strips.
- Get the onions nice and brown. French onion soup’s rich flavor comes from its base of caramelized onions, so don’t cut the onion sautéing time short! Cook them over low heat for 40 minutes, or until they’re very soft. Then, turn up the heat so that they start to brown, and cook them for 20 minutes more. You’ll be rewarded for your patience when you taste the robust, umami soup!
- Toast extra baguette slices. This soup is delicious on its own, but topping it with crisp, cheesy baguette makes it really spectacular. Whenever we make this recipe, Jack and I always finish our slices of bread before our soup bowls are empty. I recommend toasting extra baguette so that you have enough to enjoy with your entire bowl of soup.
- Make it ahead. This soup’s flavor deepens as it sits in the fridge, so it’s a great recipe to make ahead. Cook the soup from start to finish and refrigerate it for up to 2 days. When you’re ready to eat, reheat the soup on the stove and toast the baguette slices in the oven. If you have any leftover soup, freeze it for up to 3 months.
French Onion Soup Serving Suggestions
This French onion soup recipe is deeply flavorful and rich, so a little goes a long way. I love to serve small bowls as a starter for a holiday dinner or a date night in. Pair it with a simple salad, like my Caesar Salad or Pear Salad, and any protein you like! It would also be excellent with pasta. Try serving it with one of these recipes:
- Orecchiette with Broccoli Rabe
- Butternut Squash Ravioli
- Spaghetti Aglio e Olio
- Fettuccine Alfredo
- Garlic Herb Mushroom Pasta
- Or any of these 25 Easy Pasta Recipes!
Enjoy!
More Favorite Soup Recipes
If you love this French onion soup recipe, try one of these soups next:
- Butternut Squash Soup
- Tomato Basil Soup
- Tortellini Soup
- Cauliflower Soup
- Best Lentil Soup
- Carrot Ginger Soup
- Vegan Broccoli Soup
Want even more soup recipes? Check out this post for 30 of my favorites!
French Onion Soup
Ingredients
- 6 tablespoons extra-virgin olive oil
- 3 pounds medium yellow onions, halved and thinly sliced
- ¾ teaspoon sea salt
- 1½ tablespoons balsamic vinegar
- 1½ tablespoons tamari
- 1½ tablespoons fresh thyme leaves
- 3 garlic cloves, minced
- 3 tablespoons all-purpose white flour
- 1 cup dry white wine
- 6 cups vegetable broth
- Freshly ground black pepper
Topping
- Baguette slices
- Gruyère cheese, aged cheddar, and/or Parmesan cheese
- Fresh thyme
- Pinch of red pepper flakes, optional
Instructions
- Heat the oil in a large pot or Dutch oven over medium heat. Add the onions, salt, and several grinds of pepper and toss to combine. Reduce the heat to low and cook for about 40 minutes, stirring every few minutes, or until the onions are very soft. Increase the heat to medium and cook 15 to 20 more minutes, stirring often, until golden brown. Add the vinegar, tamari, thyme, and garlic and stir. Sprinkle the flour on the onions, stir, and cook for 2 minutes. Stir in the wine and cook 2 minutes, or until evaporated. Add the broth and simmer over medium heat for 30 minutes.
- Preheat the oven to 450°F and line a baking sheet with parchment paper. Place the baguette slices, topped with cheese, on the baking sheet and bake until the slices are toasted and the cheese is melted, 8 to 10 minutes.
- Ladle the soup into ramekins or bowls and top each with a toasted baguette piece, fresh thyme, and a pinch of red pepper flakes, if desired.
SO delicious! My husband loves this and he is not a soup lover. 🙂
I’ve decided to make a different soup every Sunday for the entire of 2022 and this was a great recipe for this week! Thanks so much… I substituted the veg broth for veg stock and the tamari for low sodium soy sauce. And it was amazing nonetheless!
I’m so glad you loved it!
Wow! This recipe packs the flavour. It really is worth all the stirring and waiting. I followed the recipe exactly except used light soy sauce instead of Tamari. Will make again for my French onion -loving husband.
I’m so glad you loved it!
I made this tonight and it was okay, but not amazing. I admit that I was super excited about it, and I really wanted to love it, but it just tasted off. I followed the recipe to a T, and I know the recipe has so much potential, but I do think this is one of those things where the wrong broth, vinegar, or wine could make or break the recipe. In my case, I think the broth I used was kind of gross (Pacifica brand veggie broth…not my normal kind). And, for whatever reason, although I measured exactly 1.5 tablespoons, I could taste the balsamic vinegar so strongly, which was really off-putting. It was very good quality balsamic, but I think maybe that was the problem – it was thick and syrupy and made the broth too sweet (and also somehow too balsamic flavored). I tried to add various other seasonings to improve the flavor, and it worked a little, but it was just okay. Maybe I’ll try it again with a different broth and a different (or less) vinegar. Thanks for the recipe.
Update! Since the first batch was really not good, I actually threw my soup in a colander, drained the broth, and added the onions to a new broth I made with higher quality mushroom stock, a little wine, some thyme, and no vinegar! It’s saved!!! Now it’s really delicious! Yay!
Hi Sarah, I’m glad you liked it! I can see how a syrupy balsamic could *really* change things (I use just an inexpensive everyday balsamic for cooking – the Trader Joe’s and Allesi brands are both pretty simple and straight forward). For store-bought broth I like Whole Foods 365 (not the low sodium one) best.
This was really good, and no less good than if it had meat broth in it. I used old cheddar on the toasts because gruyere is generally not vegetarian. Served with a citrus salad for a great transition from winter to spring meal. Thanks for a great recipe!
Made today for a Friday during Lent lunch…amazing!! Just like a French bistro!
Everyone of your recipes are fantastic.
love this dish and yes the toasted baguette may be the best thing about it, thank you!
Could I use a dry red wine instead of white?
you could!
I have a question about the wine. I do not drink wine, but I would have no objection to using it to prepare this soup. However, my knowledge of wine is practically nil. What kind of dry white wine would you recommend using?
I love French onion soup and look forward to making your recipe.
Thanks!
Hi Shirley, I’d go for an inexpensive Pinot Grigio.
Boy oh boy was this good. It is totally worth the cooking time. I halved the recipe but wish I would have made the fully version. It was so tasty, even my husband loved it (and he is sceptical about vegetarian food and is not a fan of soups generally!) I will definitely make this again. Thanks so much for the recipe.
I agree. this has been a wonderful article
This sounds fabulous! Can I use arrowroot to thicken rather than flour? If so amount?
Hi do you do this all with the pan uncovered? Seems like the first stage should be covered at least?
Yes, I do it uncovered – you’re essentially caramelizing the onions at the beginning stage (stirring often), which is usually done uncovered. Hope that helps!
I made this soup tonight – my husband and I loved it! I made it exactly as directed – it was easy and delicious. Can’t wait to make it again!
What brand of cheese for the parm and gruyere did you use that is vegetarian? I just discovered rennet in cheese and am so saddened that while I thought I was a strict vegetarian for a decade I’ve still been consuming animal product. I haven’t been able to find these types of cheeses with veg or microbial enzymes instead. This looks amazing but I don’t know what cheese to use. Any tips?
Hi Danielle, the BelGioioso brand has a Parmesan that’s specifically labeled vegetarian… look for that one or if you go to a store with a cheese counter (like Whole Foods or specialty cheese shops), they can let you know which are specifically vegetarian. And/or white cheddar, asiago, or fontina can be used on the toasts instead!
Hi Vivian, I’m so glad you loved the soup – thank you for pointing out the cooking time issue, I’m so glad it was worth the wait!
one of my favorite dishes, thank you, love the indivifual serving cookware too1
This soup is DIVINE! I just made it last night. You do feel a little crazy cooking the onions for that long, but I wonder if the cooking time could be reduced by covering the onions during the first 40 minute segment. I’ll try that next time. I’m finishing the leftovers right now and I have to say, it is even better the next day. Such a savory flavor. Thank you! ~
Thanks for the nicest recipe, looks so delicious!
I won’t be able to make this until next fall (we’re about to start an extended trip), but even though I am neither vegetarian nor much of a soup eater, this one looks like a must-make. I do like French onion soup. And seeing your shredded cheese on the baguette makes me think that my pre-shredded Chihuahua cheese, which melts beautifully, would be the perfect choice. This recipe sounds much better than any other I’ve seen.
This looks amazing! I can’t wait to try it! Is there a gluten-free flour you’d recommend using to thicken the soup? Thank you!
Hi Kristin, I think a GF all purpose blend would work just fine. A bit of cornstarch would work too. I hope you enjoy!
Would you use the same amount of cornstarch to sub flour?
I would do about 1/2 tablespoon cornstarch – but add it at the end. Take 1/4 cup of the simmered soup broth (get a scoop without onion pieces) and put it in a little bowl. Whisk in the cornstarch until there are no clumps and then add that mixture to the soup. If you’d like it thicker, you can repeat with a little more. I hope that helps!
Thanks!!!