Ingredients
Equipment
Method
Step-by-Step Instructions
- Start by soaking 1 ½ cups of fresh breadcrumbs in ¼ cup plus 2 tablespoons of whole milk. Let them sit for about 5 minutes to absorb the milk, which keeps the meatballs moist and tender.
- In a large bowl, gently combine the soaked breadcrumbs with 1 ½ pounds of ground beef, 1 tablespoon of chopped parsley, 1 teaspoon of fresh thyme, 1 teaspoon of herbes de Provence, salt, and pepper to taste. Add in the minced onion, pressed garlic, ¾ cup of grated Gruyere cheese, and 1 whisked egg. Mix carefully and shape into meatballs.
- Heat 2 tablespoons of olive oil in a large oven-safe skillet over medium-high heat. Sear the meatballs in batches until they are nicely browned on all sides, about 8-10 minutes.
- For the sauce, add the remaining 2 tablespoons of olive oil and 2 tablespoons of ghee or butter to the same skillet. Toss in the sliced onions, adding salt and pepper to taste. Cook them over medium heat for 20-25 minutes until they become deeply caramelized.
- Once the onions are caramelized, stir in 4 cloves of pressed garlic, 1 teaspoon of herbes de Provence, and 1 teaspoon of dried thyme. Pour in ¼ cup of sherry or white wine, letting it bubble for 30 seconds.
- Sprinkle in 1 ½ tablespoons of flour, stirring for another 30 seconds until it’s well combined. Gradually whisk in 2 ¼ cups of beef stock to create a smooth sauce. Let this simmer for around 5 minutes.
- Nestle the seared meatballs back into the rich sauce, top with ¾ cup of Gruyere cheese and 1 cup of shredded mozzarella.
- Preheat your broiler. Place the skillet under the broiler for about 5-7 minutes, or until the cheese is melted and bubbly.
- Garnish the meatballs with extra fresh thyme and serve with warm rustic bread or over fluffy mashed potatoes.
Nutrition
Notes
Enjoy these meatballs warm right after cooking. Store leftovers in an airtight container for up to 3 days. Freeze in a single layer for up to 3 months.
