Go Back

French Onion Meatball Skillet

French onion meatball skillet with deeply caramelized onions, simmered into a savory broth that clings to golden-browned meatballs. Finish with a full blanket of melted Gruyère broiled until bubbly and browned.
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
  

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

Equipment

  • 1 cast iron skillet

Method
 

Make and brown the meatballs
  1. Mix ground beef, breadcrumbs, egg, Worcestershire, garlic powder, and salt and pepper until just combined, then roll into meatballs. Keep them roughly even so they brown at the same rate.
  2. Heat the butter in an oven-safe cast iron skillet over medium heat until foaming. Brown the meatballs in batches for 2-3 minutes per side until golden, then remove to a plate.
Caramelize onions and build the base
  1. Lower heat to medium-low and cook the onions in the same skillet, stirring occasionally, for 30-35 minutes until deeply caramelized and dark golden. Scrape up any browned bits as they form.
  2. Add the minced garlic and fresh thyme and cook for 1 minute, stirring, until fragrant. Keep heat steady so the garlic doesn’t burn.
  3. Deglaze with the dry white wine, scraping the pan with a spoon as the liquid reduces. Cook for 2-3 minutes until the wine smell mellows.
  4. Pour in the beef broth and add Worcestershire, then bring to a gentle simmer. Simmer for 3-5 minutes so the flavors blend.
Simmer and broil for melty Gruyère
  1. Nestle the browned meatballs into the caramelized onion sauce. Make sure the sauce comes up around the meatballs for a braised effect.
  2. Simmer the skillet over medium-low for 10 minutes, gently bubbling, until the meatballs are cooked through. The sauce should look glossy and thickened.
  3. Scatter the Gruyère over the entire surface of the skillet in an even layer. Broil 3-5 minutes at 500°F until golden and bubbly with browned edges.

Notes

Pro tip: caramelize the onions slowly—stir less once they’re broken down, and scrape up fond for maximum flavor. Refrigerate leftovers in an airtight container up to 4 days; reheat gently in a skillet. Freezing is not ideal because the onions and cheese can change texture, but you can freeze cooked meatballs with sauce for up to 2 months if needed; thaw and reheat on low. For a lower-carb option, swap breadcrumbs for crushed almond flour or finely ground pork rinds (adjust seasoning to taste).