Description
French Onion Meatballs combine tender, juicy ground beef meatballs with a rich, deeply caramelized French onion sauce topped with melted Gruyere and mozzarella cheese. Perfectly seared and broiled to gooey cheesy perfection, these meatballs make a comforting and elegant meal served with toasted bread or mashed potatoes.
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
- ¼ teaspoon black pepper
- ½ 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 breadcrumbs in milk for 5 minutes. In a large bowl, combine ground beef, soaked breadcrumbs, parsley, fresh thyme, herbes de Provence, salt, pepper, minced onion, garlic, ¼ cup Gruyere cheese, and whisked egg. Gently mix with clean hands until combined without overmixing.
- Form Meatballs and Chill: Use a cookie scoop or tablespoon to portion meat mixture into 2 tablespoon balls. Wet hands and roll each portion into a round meatball. Place on tray and chill in the fridge for 15 minutes.
- Brown Meatballs: Heat 2 tablespoons olive oil in a large cast iron or heavy skillet over medium-high heat. Add a batch of meatballs and sear, turning to brown all sides for 8 to 10 minutes. Remove and keep warm. Repeat with remaining meatballs as needed, adding oil if necessary.
- Caramelize Onions: In the same skillet, add remaining olive oil (if needed) and ghee or butter over medium-high heat. Add sliced onions with pinch of salt and pepper. Cook stirring frequently for 20 to 25 minutes until onions are very dark, soft, and jammy.
- Add Flavor and Thicken Sauce: Stir in pressed garlic, herbes de Provence, and dried thyme for about 30 seconds until fragrant. Pour in sherry or white wine and cook for 30 seconds to reduce. Sprinkle in flour and stir to combine for 30 seconds. Gradually whisk in beef stock until smooth and simmer for 5 minutes to thicken.
- Finish and Broil: Turn off heat and stir in fresh thyme leaves. Nestle meatballs back into onion sauce. Sprinkle evenly with remaining Gruyere and mozzarella cheeses. Place skillet under high broiler for 5 to 7 minutes until cheese is melted and bubbly.
- Serve: Garnish with extra fresh thyme leaves. Spoon 3 to 4 meatballs with plenty of sauce and melted cheese into bowls. Serve alongside warm toasted bread or over mashed potatoes for a hearty meal.
Notes
- Use fresh breadcrumbs for best texture or substitute panko breadcrumbs.
- Allow meatballs to chill to help them hold their shape when browning.
- Caramelizing onions slowly is key for deep flavor—don’t rush this step.
- Substitute beef stock with vegetable stock to make it lighter but still flavorful.
- If you don't have sherry, use dry white wine or a splash of balsamic vinegar as alternatives.
- Broiler times may vary; watch closely to avoid burning the cheese.
- These meatballs freeze well before cooking; freeze shaped meatballs on a tray, then transfer to a bag for up to 3 months.
Nutrition
- Serving Size: 1 serving
- Calories: 669 kcal
- Sugar: 7 g
- Sodium: 620 mg
- Fat: 45 g
- Saturated Fat: 20 g
- Unsaturated Fat: 22 g
- Trans Fat: 0 g
- Carbohydrates: 24 g
- Fiber: 3 g
- Protein: 38 g
- Cholesterol: 140 mg