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!
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
- 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
- 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 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.