French Onion Soup

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

French onion soup is one of my favorite comfort foods. For years, I haven’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 French onion soup essential: toasty baguette topped with melty cheese!

This French onion soup recipe would be an elegant starter for a holiday dinner, but you could also enjoy it as a meal on its own. Lately, Jack and I haven’t been able to get enough of it, and we’re looking forward to having it on repeat all winter long. Happy soup-making!

French onion soup recipe ingredients

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.

Caramelized onions

Then, toast the bread. Top thin slices of baguette or French bread with grated cheese and bake them in a 450-degree preheated 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 or a combination of aged white cheddar and Parmesan cheese.

And finally, eat! When the bread is ready, ladle the soup into bowls. Top each with a toasted slice of bread and thyme sprigs, and enjoy!

French onion soup recipe

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 after it simmers!
  • 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 a few months.

Cheesy baguette on a baking sheet

More Favorite Soup Recipes

If you love this French onion soup recipe, try one of these soups next:

Or head to this post to find 25+ of my favorite soup recipes!

French Onion Soup

French Onion Soup

rate this recipe:
5 from 6 votes
Prep Time: 10 mins
Cook Time: 1 hr 30 mins
Total Time: 1 hr 40 mins
Serves 4 to 6


  • 6 tablespoons extra-virgin olive oil
  • 3 pounds medium yellow onions, halved and thinly sliced
  • ¾ teaspoon sea salt
  • tablespoons balsamic vinegar
  • tablespoons tamari
  • 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


  • Baguette slices
  • Gruyère cheese, aged cheddar, and/or Parmesan cheese
  • Fresh thyme
  • Pinch of red pepper flakes, optional


  • Heat the oil in a large pot 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.



Leave a comment:

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

  1. Kristin

    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!

    • Jeanine Donofrio

      Hi Kristin, I think a GF all purpose blend would work just fine. A bit of cornstarch would work too. I hope you enjoy!

      • Wendy

        Would you use the same amount of cornstarch to sub flour?

        • Jeanine Donofrio

          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!

          • Wendy


  2. Susan

    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.

  3. Tania

    5 stars
    Thanks for the nicest recipe, looks so delicious!

  4. Alix

    5 stars
    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! ~

  5. Sabrina from

    one of my favorite dishes, thank you, love the indivifual serving cookware too1

  6. Jeanine Donofrio

    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!

  7. Danielle

    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?

    • Jeanine Donofrio

      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!

  8. KSF

    5 stars
    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!

  9. Sky Stanfield

    Hi do you do this all with the pan uncovered? Seems like the first stage should be covered at least?

    • Jeanine Donofrio

      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!

A food blog with fresh, zesty recipes.
Photograph of Jeanine Donofrio and Jack Mathews in their kitchen

Hello, we're Jeanine and Jack.

We love to eat, travel, cook, and eat some more! We create & photograph vegetarian recipes from our home in Chicago, while our shiba pups eat the kale stems that fall on the kitchen floor.