Ingredients
Method
Meatballs
- Combine breadcrumbs and milk in a large bowl. Let stand 5 minutes, until absorbed.
- Add egg, Parmesan, Pecorino, parsley, grated onion, garlic, Italian seasoning, salt, and pepper. Stir, then gently mix in beef and pork just until incorporated. Do not compact.
- Gently form about 16 meatballs, roughly 1 1/2 inches across.
- Heat 1 tablespoon olive oil in a large Dutch oven or deep skillet over medium to medium-high heat. Brown meatballs 5–7 minutes total, turning carefully. Transfer to a plate; they need not be cooked through.
Sauce
- Reduce heat to medium. Add enough olive oil to leave about 2 tablespoons in the pan. Cook diced onion 4–5 minutes until softened; add garlic and cook 30 seconds.
- Add tomato paste, oregano, and optional red pepper flakes. Cook 1–2 minutes, stirring, until the paste darkens slightly.
- Add crushed tomatoes, tomato sauce, salt, pepper, and optional Parmesan rind. Scrape up browned bits and bring to a gentle simmer.
- Return meatballs and juices to sauce. Partially cover and simmer gently about 20 minutes, turning once or twice, until tender and 160°F in the center.
- Discard Parmesan rind. Stir butter and fresh basil into sauce. Taste and adjust salt and pepper.
Pasta & Assembly
- While meatballs simmer, cook spaghetti in generously salted boiling water until 1–2 minutes shy of package al dente time. Reserve at least 1 cup pasta water before draining.
- Transfer enough sauce to coat spaghetti into the pasta pot or a large skillet. Add drained spaghetti and about 1/4 cup pasta water. Toss over medium-low heat 1–2 minutes, adding more pasta water if needed.
- Divide spaghetti among four shallow bowls. Top with additional sauce and meatballs. Finish with grated Parmesan or Pecorino and, if desired, extra-virgin olive oil and fresh basil or parsley.
