Description
French Onion Meatballs are a comforting and flavorful dish combining tender beef meatballs with a rich, caramelized French onion sauce topped with melted Gruyere and mozzarella cheeses. These meatballs are perfect served with warm toasted bread or creamy mashed potatoes for a satisfying meal.
Ingredients
Scale
Meatball Ingredients
- 1 ½ cups fresh breadcrumbs (or panko breadcrumbs)
- ¼ cup plus 2 tablespoons whole milk
- 1 ½ pounds organic ground beef (85/15 ratio)
- 1 tablespoon chopped parsley
- 1 teaspoon fresh thyme leaves, plus extra for garnish
- 1 teaspoon herbes de Provence
- 1 teaspoon salt (about, or adjust to taste)
- ¼ teaspoon black pepper (about, or adjust to taste)
- ½ large white onion, finely minced
- 4 cloves garlic, pressed through garlic press
- ¾ cup grated Gruyere cheese, divided use
- 1 egg, whisked
- 1 cup shredded whole milk mozzarella cheese
French Onion Sauce Ingredients
- 4 tablespoons olive oil, divided use
- 2 tablespoons ghee or butter
- 2 ½ large white onions, halved and sliced
- Salt, to taste
- Black pepper, to taste
- 4 cloves garlic, pressed through garlic press
- 1 teaspoon herbes de Provence
- 1 teaspoon dried thyme
- ¼ cup sherry (or white wine)
- 1 ½ tablespoons flour
- 2 ¼ cups beef stock
- 2 teaspoons fresh thyme leaves
Instructions
- Prepare Meatball Mixture: Soak the breadcrumbs in the milk for 5 minutes. Meanwhile, place ground beef in a large bowl. Once soaked, combine the breadcrumbs with the beef along with parsley, fresh thyme, herbes de Provence, salt, pepper, minced onion, garlic, ¼ cup Gruyere cheese, and whisked egg. Gently mix with your hands until combined but not overmixed.
- Shape Meatballs: Scoop 2 tablespoon portions of the meat mixture, wet hands with water and roll into round meatballs. Place on a tray or platter and refrigerate for 15 minutes to chill.
- Brown Meatballs: Heat 2 tablespoons olive oil in a large cast iron or heavy-bottom skillet over medium-high heat. Add a batch of meatballs and sear, turning to brown all sides for about 8 to 10 minutes. Transfer browned meatballs to a tray and repeat with remaining meatballs, adding more oil if needed.
- Caramelize Onions: In the same skillet on medium-high, add remaining 2 tablespoons olive oil and ghee or butter (skip oil if pan has enough fat). Add sliced onions with a pinch of salt and pepper. Cook, stirring frequently, for 20 to 25 minutes until onions are deeply caramelized, dark, soft, and jammy.
- Add Aromatics and Deglaze: Stir in garlic, herbes de Provence, and dried thyme until fragrant, about 30 seconds. Add sherry or white wine and let bubble to reduce for 30 seconds.
- Make Sauce Base: Sprinkle flour over onions and stir for 30 seconds to incorporate. Pour in beef stock and whisk vigorously until smooth. Simmer sauce for 5 minutes to thicken slightly.
- Prepare for Broiling: Turn off stove heat and stir in fresh thyme leaves. Nestle browned meatballs into the sauce in the skillet. Top meatballs with remaining Gruyere and shredded mozzarella cheese.
- Broil Meatballs: Place skillet under a high broiler for 5 to 7 minutes or until cheese is melted, bubbling, and slightly golden.
- Serve: Garnish meatballs with additional fresh thyme leaves. Serve with sauce and cheese, accompanied by warm toasted bread or hot mashed potatoes.
Notes
- Use fresh herbs wherever possible for maximum flavor.
- Soaking breadcrumbs keeps meatballs tender and moist.
- Do not overmix the meat to avoid tough meatballs.
- Caramelize onions slowly for deeper flavor; do not rush this step.
- If you don’t have sherry, dry white wine or additional beef stock are good substitutes.
- Use a cast iron or oven-safe skillet to transfer easily from stovetop to broiler.
- These meatballs reheat well and can be stored in the refrigerator for up to 3 days.
Nutrition
- Serving Size: 1 serving
- Calories: 669 kcal
- Sugar: 6 g
- Sodium: 580 mg
- Fat: 48 g
- Saturated Fat: 22 g
- Unsaturated Fat: 23 g
- Trans Fat: 0.5 g
- Carbohydrates: 18 g
- Fiber: 2 g
- Protein: 40 g
- Cholesterol: 155 mg