Go Back

French Onion Meatball Skillet

French onion meatball skillet with deeply caramelized onions and tender browned meatballs simmered in a savory broth, then finished under a golden, bubbly Gruyère melt. Made in an oven-safe cast iron skillet for easy, one-pan serving with fresh thyme on top.
Prep Time 20 minutes
Cook Time 45 minutes
Total Time 1 hour 5 minutes
Servings: 4 servings
Course: Main Dish
Cuisine: French-American
Calories: 620

Ingredients
  

French Onion Meatballs
  • 1 lb ground beef
  • 0.25 cup breadcrumbs
  • 1 egg
  • 1 tbsp Worcestershire
  • 1 tsp garlic powder
  • 0.5 salt to taste
  • 0.25 pepper to taste
  • 3 onions large, thinly sliced
  • 4 tbsp butter
  • 2 clove garlic minced
  • 0.5 cup dry white wine
  • 1.5 cup beef broth
  • 1 tbsp Worcestershire
  • 1 tbsp fresh thyme
  • 2 cup Gruyere shredded

Equipment

  • 1 cast iron skillet

Method
 

Make and brown the meatballs
  1. In a bowl, combine ground beef, breadcrumbs, egg, Worcestershire, garlic powder, salt, and pepper, then mix until evenly combined.
  2. Roll the mixture into meatballs, about 1 to 1.5 inches wide.
  3. Heat 1 tablespoon butter in an oven-safe skillet over medium-high heat, then brown the meatballs in batches until golden on multiple sides.
  4. Remove the browned meatballs to a plate and keep any browned bits in the skillet.
Caramelize onions and build the French onion base
  1. Melt the remaining butter in the same skillet over medium-low heat, then add the thinly sliced onions.
  2. Cook the onions for 30-35 minutes, stirring occasionally, until deeply caramelized and jammy.
  3. Stir in the minced garlic and fresh thyme for 30-60 seconds, just until fragrant.
  4. Pour in the dry white wine and scrape up the browned bits, then simmer for 2-3 minutes to reduce slightly.
  5. Add beef broth and Worcestershire, stirring to combine.
Simmer, top with Gruyère, and broil
  1. Nestle the meatballs into the caramelized onion sauce so they’re partially submerged.
  2. Simmer for 10 minutes, letting the meatballs absorb some onion broth.
  3. Scatter the shredded Gruyère evenly over the skillet.
  4. Broil 3-5 minutes until the cheese is golden and bubbly, with browned spots across the surface.

Notes

Pro tip: for the richest flavor, don’t rush the onion stage—low and slow until truly deep caramelization. Store leftovers in the fridge up to 3 days; reheat gently in a skillet or microwave until hot. Freeze meatballs and sauce (tightly sealed) up to 2 months, and add cheese fresh when reheating for best texture. For a lighter option, swap half the ground beef for lean ground turkey while keeping the same seasonings.