These are the ultimate classic Italian-American meatballs — tender, juicy, and packed with savory flavor from a blend of ground beef and pork. A simple panade of breadcrumbs soaked in milk keeps every meatball impossibly moist, while a generous hit of garlic, fresh parsley, and Parmigiano-Reggiano gives them rich, deep flavor. Browned to a golden crust on the stovetop and finished low and slow in marinara sauce, these meatballs are everything a comfort food classic should be — and they're just as delicious over pasta as they are stuffed into a hoagie roll or served straight from the pot with crusty bread.
2tbspolive oilFor browning; plus more as needed between batches
24ozmarinara sauce680g; 1 standard jar of good-quality store-bought, or about 3 cups homemade
For Garnish
Parmigiano-Reggiano cheeseFreshly grated, to taste
fresh flat-leaf parsleyChopped, to taste
Instructions
Add the breadcrumbs to a large mixing bowl, pour the milk over them, stir to combine, and let the mixture sit for 5 minutes until the breadcrumbs absorb the milk and form a soft, paste-like consistency.
Add the ground beef, ground pork, eggs, Parmigiano-Reggiano, garlic, parsley, salt, black pepper, oregano, and red pepper flakes to the bowl with the panade. Using clean hands, gently fold and mix just until all ingredients are evenly incorporated — do not overwork.
Line a baking sheet with parchment paper. Using a large cookie scoop or spoon, portion out approximately 3 tablespoons of meat mixture per meatball and roll each gently between dampened palms into smooth, 1.5- to 2-inch balls. You should yield about 22 to 24 meatballs.
Heat olive oil in a large skillet over medium-high heat until shimmering. Working in batches without crowding, sear the meatballs for 2–3 minutes per side until deep golden-brown on two or three sides, then transfer to a clean plate — they will not be cooked through yet.
Pour the marinara sauce into the same pan over medium heat, scraping up any browned bits, then nestle the meatballs back in. Reduce heat to low, partially cover, and simmer for 20–25 minutes, turning the meatballs occasionally, until they reach an internal temperature of 165°F.
Taste the sauce and adjust seasoning as needed, adding a splash of water or broth if the sauce has thickened too much. Serve immediately garnished with freshly grated Parmigiano-Reggiano and chopped parsley.
Notes
Don't overwork the meat: Mix the meatball mixture just until combined — overworking activates proteins and results in tough, dense meatballs.
The panade is essential: Soaking breadcrumbs in milk before adding to the meat is the key to keeping meatballs moist and tender during cooking.
Use 80/20 ground beef: The fat content is critical for flavor and moisture. Leaner blends tend to produce drier, less flavorful meatballs.
Test your seasoning first: Fry a small teaspoon of the raw mixture in a pan before shaping all the meatballs so you can adjust salt and spices as needed.
Chill if too sticky: If the mixture feels very soft or sticky, refrigerate it for 20–30 minutes before rolling — it'll be much easier to handle.
Wet hands for rolling: Dampening your palms with cold water between rolling prevents the meat from sticking and helps form smooth, even balls.
Brown in batches: Never crowd the pan — overcrowding causes steaming rather than searing and you'll miss out on that deeply flavored crust.
Make ahead: Shaped raw meatballs can be refrigerated uncovered for up to 24 hours before cooking, or freeze cooked meatballs for up to 3 months.
Storage: Store cooled meatballs and sauce in an airtight container in the refrigerator for up to 4 days. The flavor improves overnight.
Variations: Substitute ground turkey for a lighter version (add extra olive oil to compensate), use gluten-free breadcrumbs for a GF version, or stuff each meatball with a small cube of fresh mozzarella before rolling for a gooey center.