French Onion Soup Recipe

11 Min Read

Rich, sweet, and savory, this vegetarian French Onion Soup is a revelation in a bowl. I’ve unlocked the secret to making the absolute best bowl of onion soup using healthy, homemade veggie stock and the traditional crunchy, cheesy crouton topping, and I can’t wait to share it with you!

About French Onion Soup

I have received so many requests for this classic French soup over the years. In fact, it is one of the most requested recipes of all time! It’s really no surprise though.

French Onion Soup is one of our comfort foods that has a lovely balance of savory and mild sweet flavors and gorgeous textures. It’s also super cozy and budget-friendly!

This classic soup is made by caramelizing onions in butter, which are then deglazed with dry white wine and further cooked with meat or vegetable stock, then finished with toasted bread or croutons with melted cheese.

I make this vegetarian version of this homemade French Onion Soup recipe with a good and flavorful homemade Vegetable Stock.

The stock is an essential ingredient that can make or break your soup. I suggest using either homemade stock (which is the best option) or a low sodium vegetable broth or stock (which is an acceptable alternative).

The most important technique to get this dish right is caramelizing the onions. While this step isn’t difficult, it’ll take about 40 to 45 minutes depending on the pan thickness and size. Go slow and steady when sautéing the onions to ensure you coax the most marvelous sweet flavor from them.

In this post, I offer two options, that is to broil (grill) or toast bread separately. Most often, I place the toasted bread topped with cheese on the soup and broil it in the oven (broiler method) until the cheese melts.

You can also opt to melt the cheese on the bread toasts separately and then place them on the soup while serving. Choose whatever is easiest for you.

Ingredients & Substitutions

Perhaps surprisingly, this complexly flavored soup has just 10 simple ingredients. Here’s what you’ll need:

  • Onions – Any variety of onions can be added like red, yellow, white onions, vidalia onions, shallots or even leeks. Depending on the type of onions used, the flavors will vary. I prefer this soup with red onions. Just make sure to slice the onions evenly so that they get cooked uniformly.
  • Butter – Add either salted or unsalted butter. Make sure to adjust the seasoning as you go. Vegan butter can also be added, if needed.
  • Dry White Wine – Wine gives a lovely depth of flavor here, but you can sub in apple cider vinegar, white wine vinegar, red wine vinegar, or sherry if needed.
  • Flour – Either whole wheat flour or all-purpose flour can be used. A cup-for-cup all-purpose gluten-free flour blend can also be used, if needed.
  • Bay Leaf – Tej Patta (Indian bay leaf) can also be used.
  • Garlic – Fresh cloves are preferred for a more potent flavor, but you can use ¼ teaspoon of ground garlic powder for each clove if necessary.
  • Vegetable Stock – If possible, I recommend using a flavorful homemade stock. If not, opt for a low-sodium, high-quality store-bought brand.
  • Salt & Freshly Crushed Black Pepper – Simple seasonings yield delicious results.
  • Fresh Rosemary or Thyme – Optional, but recommended for depth of flavor. 1 teaspoon of dried herbs can also be used as an alternative to fresh herbs.
  • Crusty Bread – French bread, baguette, sourdough, or sandwich bread will all work.
  • Gruyere Cheese – Opt for a vegetarian (rennet-free) version of melty cheese. While Gruyere is the classic choice for this French soup, you can swap in Swiss cheese, provolone, fontina, gouda, mozzarella or parmesan as needed. Feel free to use plant-based cheese for a vegan option.

How to make French Onion Soup


1. Peel, rinse and thinly slice about 4 medium-sized onions (300 grams) for a total of 3 cups of thinly sliced onions.

Sometimes there are some black spots or marks on the onions and these need to be completely rinsed before slicing the onions.

Finely chop or mince two small to medium-sized garlic cloves and set aside.

Caramelize Onions

2. Place a heavy-bottomed pot on the stovetop. Add 3 tablespoons butter and let the butter melt.

3. When the butter starts melting, add the sliced onions.

4. Mix the onions with the butter really well.

5. Add a pinch of salt and stir.

6. Stirring often, continue to sauté the onions on a low or medium-low heat.

7. Initially, the onions will soften and become translucent. Continue to stir at intervals of 2 to 3 minutes.

8. After some minutes the onions will start to become light golden.

9. The onions need to be cooked more to reach their full caramelized potential. After the onions reach a light golden stage, they have to be stirred continuously so that they are evenly cooked and become a deep golden brown.


10. When the onions have caramelized and have a nice golden color to them, add 2 tablespoons dry white wine.

If you do not have white wine, then add ½ to 1 tablespoon apple cider vinegar, white wine vinegar, red wine vinegar, or sherry.

11. Deglaze and scrape, remove all the stuck bits of browned onions from the bottom. Sauté for 1 to 2 minutes on a low to medium-low heat.

Add Flour

12. Add 2 tablespoons of whole wheat flour or all-purpose flour.

13. Mix very well and sauté for 2 minutes on a low to medium-low heat.

14. Add ½ teaspoon finely chopped garlic and 1 bay leaf. Stir and sauté for a minute. If the onions start sticking to the pan, then sprinkle in some water or stock.

15. Add 3.5 cups of vegetable stock.

16. Place 1 sprig of rosemary or thyme on the stock.

Simmer French Onion Soup

17. Season with salt to taste. Remember that as the soup simmers, the flavors will become more concentrated, so start with a small amount of salt to begin.

18. Add ¼ to ½ teaspoon freshly crushed black pepper. Mix again.

19. Cover the pan. Simmer for 30 minutes on a low heat. You can check the soup and give it a quick stir after about 10 to 15 minutes.

20. In this below photo, the French Onion Soup is done and ready to be served.

Toast Bread

21. When the soup is simmering, toast the bread. Slice a baguette, french bread or your preferred bread into even ½ inch thick slices.

I have toasted the french bread slices in an oven, but you could toast them in a skillet or a flat griddle.

22. Place the bread slices on a baking tray or a baking sheet. Brush with some melted butter or olive oil.

23. Preheat the oven for 15 minutes at 230 degrees C/450 degrees F. In a preheated oven, toast the slices. Halfway through remove the tray and turn each slice.

24. Remove and keep aside when the slices become light golden or lightly toasted.

Option 1: Broiling (Grilling)

25. Now you can use baking safe soup bowls for individual servings or use a baking safe pot or pan.

Keep the soup bowls on a baking tray. Pour the soup in these bowls.

26. Place toasted bread slices on the onion soup.

If you have used a Dutch oven for making the soup, then you can place the croutons or toasted bread slices directly in it.

27. Sprinkle grated vegetarian gruyere cheese all over the toasted bread slices.

28. Place the bowls on a baking tray, then broil in the already preheated oven at 230 degrees C/450 degrees F till the cheese melts.

(Broiling means placing the pan or tray beneath the top heating element of the oven.)

29. Let the cheese melt or become golden. Remove and serve hot. You can garnish with some chives or parsley while serving.

Option 2: Baking Cheese Toasts Separately

30. For baking the cheese toasts separately
, sprinkle grated gruyere cheese (vegetarian) on the toasted bread slices.

31. Bake at 230 degrees C/450 degrees F in a preheated oven till the cheese melts. Keep the tray near the top heating element so that the cheese melts quickly.

32. Bake until the cheese melts.

33. Pour steaming hot French Onion Soup in soup bowls. Place the cheese toasts on the onion soup. Garnish with some parsley or chives while serving.

Serve hot French Onion Soup as a starter or as a light dinner meal. You can also pair it with a hearty flavorful salad of your choice.

Leave a comment