← BlogJune 27, 2026

How to Make the Perfect French Onion Soup

French · Medium · 90 min · 4 servings

vegetarian-adaptable
Advertisement
French Onion Soup

A rich and deeply savory soup built on a foundation of slowly caramelized onions simmered in beef broth and finished with crusty bread and melted Gruyere cheese. This classic French bistro dish rewards patience with layers of sweet, umami-packed flavor in every spoonful.

Why this recipe works

This French Onion Soup recipe has been crafted to deliver restaurant-quality results in your home kitchen. At just 90 minutes from start to finish, it fits perfectly into a busy schedule without sacrificing flavor. Each serving comes in at 420 calories with 18g of protein, making it a balanced choice for any meal.

Advertisement

What you will need

This recipe uses 8 simple ingredients that you can find at any grocery store:

  • 4 large yellow onions, thinly sliced
  • 4 tbsp unsalted butter
  • 1 cup dry white wine
  • 6 cups beef broth
  • 2 tsp fresh thyme leaves
  • 8 slices baguette, cut 1 inch thick
  • 2 cups Gruyere cheese, shredded
  • 1 tsp salt and black pepper

Step by step instructions

Step 1: Caramelize the Onions

Melt butter in a large heavy-bottomed pot over medium heat. Add all the sliced onions and a pinch of salt, stirring to coat. Cook low and slow for 45 to 55 minutes, stirring every 5 to 8 minutes, until the onions are deep golden brown and very soft. Do not rush this step as proper caramelization builds the entire flavor base of the soup.

Step 2: Deglaze and Build the Broth

Increase heat to medium-high and pour in the white wine. Scrape up any browned bits stuck to the bottom of the pot. Let the wine reduce by half, about 3 minutes, then add the beef broth and fresh thyme. Bring to a gentle boil, then reduce heat and simmer for 15 minutes to meld the flavors together.

Step 3: Season the Soup

Taste the soup and adjust seasoning with salt and black pepper as needed. The broth should be rich, savory, and slightly sweet from the onions. Remove the thyme sprigs if using whole sprigs and keep the soup warm on low heat while you prepare the cheese toasts.

Step 4: Toast the Baguette Slices

Place baguette slices on a baking sheet and broil for 2 to 3 minutes per side until golden and crisp. This toasting step is important because it prevents the bread from becoming completely soggy when placed on top of the soup. Remove from oven and set aside.

Step 5: Assemble and Broil

Ladle the hot soup into oven-safe crocks or bowls placed on a baking sheet. Float two toasted baguette slices on top of each bowl and cover generously with shredded Gruyere cheese. Place under the broiler for 3 to 5 minutes until the cheese is melted, bubbly, and spotted with golden brown patches. Serve immediately and warn guests that the bowls are extremely hot.

Advertisement

Easy substitutions

Missing an ingredient? Here are some swaps that work perfectly:

  • Gruyere cheese → Swiss cheese or Emmental for a milder but equally melty topping
  • dry white wine → additional beef broth with a splash of apple cider vinegar to add acidity
  • beef broth → vegetable broth with a tablespoon of soy sauce for a vegetarian version with depth

Common mistakes to avoid

Watch out for these pitfalls that can affect your results:

  • Rushing the caramelization process by using high heat, which burns the onions instead of developing deep sweetness
  • Using pre-shredded cheese which contains anti-caking agents that prevent proper melting and browning under the broiler
  • Skipping the toasting step for the baguette, resulting in bread that completely dissolves into the soup before it reaches the table

Nutrition facts

Per serving: 420 calories, 18g protein, 38g carbs, 22g fat, 3g fiber.

Ready to cook?

Get the interactive recipe with adjustable servings, built-in timers, and ingredient checklist.

View full recipe →
Advertisement