Go Back
+ servings
vegetarian French onion soup in a red bowl

Perfect Vegetarian French Onion Soup

This vegetarian French onion soup is extra cheesy, extra delicious, and extra decadent. It's the winter comfort food you deserve! Along with the melty gruyere and crusty baguette on top, there's a Swiss cheese surprise at the bottom of the bowl to make each bite that much better.
5 from 1 vote
Prep Time 15 mins
Cook Time 1 hr 20 mins
Course Appetizer, Main Course
Servings 2 BIG BOWLS
Calories 778 kcal


  • 2 lbs yellow onions about 4 large onions, peeled and cut into thin slices
  • 2 tbsp olive oil
  • 1-2 tbsp unsalted butter
  • ½ tsp salt plus more, to taste
  • 1 tsp white sugar
  • 3 cloves garlic chopped
  • cup dry red wine I use malbec
  • 4 cups vegetable broth
  • ½ tbsp fresh thyme plus more for garnish
  • 2 bay leaves discard before serving
  • ½ tbsp Worcestershire sauce*
  • cup gruyere, shredded measure generously
  • 2 slices Swiss cheese place one in the bottom of each soup bowl
  • pinch cinnamon really, just a pinch!
  • black pepper to taste

For the Bread Topping

  • French baguette sliced
  • olive oil or cooking spray


  • Heat the olive oil over medium high heat in a large pot. When it's hot, add the sliced onions. Cook and stir often with a wooden spoon until the onions start to soften, about 20 minutes.
  • Add the butter and cook for another 20 minutes, continuing to stir every 2-4 minutes. Keep a close eye on your onions that they don't burn. Reduce heat if necessary.
  • Add the salt and sugar and continue cooking for another 15 minutes (this is when they'll really start to brown). Once you reach the 12 minute mark, add the chopped garlic.
  • Pour in the red wine to deglaze the pan. Using your wooden spoon, scrape the bottom and sides of the pan to get at any caramelized bits. Let cook for a minute or two, or until most of the wine has cooked off.
  • Add the vegetable broth, worchestire sauce, bay leaves, thyme, several grinds of black pepper, and just a pinch of cinnamon. Bring to a simmer.
    Cover and cook for 30 minutes, stirring every couple of minutes.
  • While the soup simmers, preheat the oven to 400F. Cut a French baguette into thick slices**, about three per bowl. Spray or brush one side of each slice with olive oil. Place on a tin-foil covered tray. Bake for ten minutes, flipping half way through, or until lightly golden and toasty. Set aside. Keep pan handy for later use.
    French baguette slices for onion soup
  • Discard the bay leaves from the soup. Taste test the soup and adjust for salt/pepper.
    Place one slice of Swiss cheese in the bottom of each oven-safe soup bowl before adding the soup. Divide the soup evenly among the bowls.
    Top with three slices of toasted baguette.
  • Sprinkle the cheese on both bowls. Place the bowls on the tin-foil covered tray. Turn your oven to broil and broil the soup for a few minutes, until cheese is very bubbly and slightly golden.
    Top with more thyme (optional) and pepper, or even more bread for dipping on the side.
    Serve hot and enjoy.
    Soup and bowls will be very hot!


*Be sure to buy a vegan version without anchovies if you're vegan or vegetarian. 
**You'll use about three slices per bowl depending on the size of your bowls/baguette. 


Calories: 778kcalCarbohydrates: 56gProtein: 35gFat: 45gSaturated Fat: 23gCholesterol: 122mgSodium: 2833mgPotassium: 804mgFiber: 8gSugar: 26gVitamin A: 2277IUVitamin C: 41mgCalcium: 1096mgIron: 2mg
Keyword FRENCH ONION, Soup
Tried this recipe?Let us know how it was!