Go Back
+ servings
A bowl of classic French onion soup on a wooden cutting board with a spoon.
Print Recipe
5 from 4 votes

French Onion Soup Recipe

This classic French onion soup recipe is the only way I’ll make this timeless dish. Slowly caramelized onions build deep, savory sweetness, while rich beef stock, a splash of wine, and a broiled cheese topping create the bold, balanced flavor that homemade versions often miss. Finished with garlicky toasted bread and bubbling melted cheese, this French onion soup is warm, comforting, and worth the patience it requires to make.
Prep Time30 minutes
Cook Time2 hours
Total Time2 hours 30 minutes
Course: Appetizer, Main Course
Cuisine: French
Keyword: classic french onion soup recipe, french onion soup recipe, how to make french onion soup
Servings: 4 servings

Equipment

  • 1 Large Stockpot
  • 1 Fine Mesh Strainer
  • 1 Dutch Oven or Heavy-Bottomed Pot
  • 1 Wooden Spoon
  • 1 Sharp Chef's Knife
  • 1 Cutting Board
  • 1 Ladle
  • 1 Baking Sheet
  • 1 Wire Rack
  • 4 Oven-Safe Soup Crocks or Bowls
  • 1 Cheese Grater or Microplane

Ingredients

For the Beef Stock*

  • 3-3 1/2 pound beef marrow bones
  • 2 yellow onion quartered
  • 3 medium carrot quartered
  • 3 celery rib quartered
  • 1 head garlic halved crosswise
  • 2 bay leaves
  • 4 sprig thyme
  • 4 sprig sage

For the Soup

  • 5 tablespoon butter divided
  • 2 large Vidalia onion, thinly sliced
  • 2 large white onion, thinly sliced
  • 2 large shallot, thinly sliced
  • 1 teaspoon brown sugar
  • 1 cup dry white wine
  • 2 bay leaves
  • 10 sprig thyme
  • 6 cup beef stock
  • 1 teaspoon kosher salt
  • 1 teaspoon black pepper
  • 2 teaspoon sherry

For Serving

  • 1 clove garlic halved
  • ¼ cup Gruyère cheese
  • ¼ cup Comté cheese
  • ¼ cup fontina cheese
  • 1 French baguette sliced 3/4-inch (~2 centimeter) thick
  • 4 sprig thyme

Instructions

For the Beef Stock

  • In a large stockpot, add all of the ingredients for the beef stock. Submerge the ingredients in cold water. Cover and bring to a boil. Crack the lid slightly, and then reduce to a simmer.
    3-3 1/2 pound beef marrow bones, 2 yellow onion, 3 medium carrot, 3 celery rib, 1 head garlic, 2 bay leaves, 4 sprig thyme, 4 sprig sage
  • Every 30 minutes or so, skim fat and impurities off the top. Simmer and skim for four to six hours, or until the marrow is released from the bones.
  • Strain the stock, discard the solids, and set aside.

For the Soup

  • In a Dutch oven over medium-low heat, add three tablespoons of butter, onions, shallots, and a generous pinch of salt. Cover and let the butter melt, cooking until the onions begin to soften, about 15 minutes.
    5 tablespoon butter, 2 large, 2 large, 2 large
  • Remove the lid, add the brown sugar, and cook the onion mixture, stirring often, until the onions are a deep brown and jammy in consistency, 45 minutes to one hour. Reduce the heat if the onions begin to brown too quickly, and deglaze with one tablespoon of beef stock to encourage browning. Repeat deglazing as needed.
    1 teaspoon brown sugar
  • Once the onions are deeply browned, add the white wine and scrape up any browned bits on the bottom of the pot. Cook until about 80 percent of the wine has evaporated, then add the bay leaves, thyme, and reserved beef stock. Cook for 30-45 minutes, or until the stock has slightly thickened and the flavors have married. Remove from the heat, and whisk in the remaining butter. Adjust seasoning with salt and pepper to taste.
    1 cup dry white wine, 2 bay leaves, 10 sprig thyme, 1 teaspoon kosher salt, 1 teaspoon black pepper, 6 cup beef stock

For Serving

  • Preheat the oven to 275°F (135°C). Slice the garlic clove in half. Mix the cheeses in a small bowl.
    1 clove garlic, ¼ cup Gruyère cheese, ¼ cup Comté cheese, ¼ cup fontina cheese
  • Add the sliced bread to a sheet tray fitted with a rack. Rub each piece of bread with the exposed side of the garlic clove. Bake for five minutes. Then, flip and repeat on the other side. The bread should have very little color on it, but feel dry on the surface and a bit soft on the inside.
    1 French baguette
  • Remove the bread from the oven, then adjust the oven rack to the top third. Preheat the oven to broil.
  • Add four heat-safe soup crocks to a sheet tray. Pour half a teaspoon of sherry into the bottom of each bowl. Divide the soup into the bowls, then top with one to two slices of toasted bread, a small handful of cheese, and a sprig of thyme.
    2 teaspoon sherry, 4 sprig thyme
  • Transfer the soup to the oven and broil for three to four minutes, or until the cheese is golden brown and bubbly.
  • Remove from the oven, and let it cool for a few minutes before serving.

Video

Notes

*Adjust the ingredient amounts in the recipe instructions accordingly if doubling or tripling the recipe. Also, note that the first step under the "For the Soup" section uses three tablespoons of butter. The remaining two tablespoons are used at the end. 
*Homemade stock dramatically improves the depth of flavor, but high-quality store-bought stock can be substituted if needed.
Storage: Store cooled soup in an airtight container (without bread or cheese) in the fridge for up to four days. Or, freeze for up to three months. Thaw frozen soup in the fridge overnight, and reheat on the stovetop over medium-low heat, adding a splash of beef stock or water as needed to thin it back out. Add bread and cheese, and broil just before serving. 

Nutrition

Serving: 1serving | Calories: 552kcal | Carbohydrates: 52g | Protein: 22g | Fat: 24g | Saturated Fat: 14g | Polyunsaturated Fat: 2g | Monounsaturated Fat: 7g | Trans Fat: 1g | Cholesterol: 65mg | Sodium: 1994mg | Potassium: 1050mg | Fiber: 4g | Sugar: 15g | Vitamin A: 871IU | Vitamin C: 15mg | Calcium: 375mg | Iron: 5mg