Was this page helpful?
Help improve this recipe for others.
Send this recipe to your inbox.
We'll email it straight to you - plus weekly cooking inspiration.
Ingredients
Some product links may be affiliates. If you buy through them, you're supporting the site and Pekin may earn a commission at no extra cost to you.
Meatballs
Sauce
Finish / Garnish
Method
Meatballs
Prepare pan and mix
Place a rimmed baking sheet or shallow bowl next to your workspace. In a large mixing bowl, combine ground beef and ground pork. Add the egg, milk, breadcrumbs, grated Parmigiano-Reggiano, chopped parsley, minced garlic, kosher salt, black pepper, and dried oregano.
Mix gently
Using your hands or a fork, gently fold ingredients together until just combined. Avoid overmixing to keep meatballs tender — mix only until evenly distributed.
Portion into 4 oz meatballs
Weigh or portion the mixture into 4-ounce (approximately 113 g) portions. This recipe yields about 4 meatballs (total ~2 lbs meat makes 8 but here with 1 lb total yields about 4 of 4oz); adjust counts to your menu target. Roll each portion lightly into a smooth ball without packing too tightly.
Brown meatballs
Heat 2 tablespoons olive oil in a large skillet over medium-high heat. When oil shimmers, add meatballs in a single layer, leaving space between them. Brown on all sides, turning carefully with tongs or a spoon, about 8–10 minutes total. They do not need to be fully cooked through — just well-browned to develop flavor. Remove browned meatballs to a plate and set aside.
Sauce
Sauté aromatics
In the same skillet or in a medium saucepan, add 1 tablespoon extra-virgin olive oil over medium heat. Add the diced onion and sauté 4–5 minutes until softened and translucent. Add 2 minced garlic cloves and cook 30–45 seconds until fragrant, taking care not to brown the garlic.
Deglaze
If using, pour in 1/4 cup red wine to deglaze the pan, scraping up browned bits from the bottom with a wooden spoon. Let the wine reduce by half, about 1–2 minutes.
Build the sauce
Stir in 2 tablespoons tomato paste and cook 1 minute. Add the crushed tomatoes, 1/2 cup stock, 1/2 teaspoon sugar, dried basil, dried oregano, bay leaf, 1 teaspoon salt, and 1/2 teaspoon black pepper. Stir to combine and bring to a gentle simmer.
Simmer with meatballs
Gently nestle the browned meatballs into the simmering sauce. Reduce heat to low so the sauce maintains a very gentle simmer. Cover partially and simmer for 25–30 minutes, turning meatballs once halfway through, until meatballs are cooked through (internal temperature 160°F / 71°C) and sauce has rounded and thickened. If the sauce becomes too thick, add a splash of stock or water.
Finish sauce
Remove bay leaf. Stir in torn fresh basil leaves if using and check seasoning; adjust salt and pepper to taste.
Finish / Garnish
Spoon meatballs and sauce onto warmed plates or a shallow serving bowl. Sprinkle with grated Parmigiano-Reggiano and chopped fresh parsley. Serve hot.