Spaghetti & Meatballs
A classic Italian-American comfort dish featuring tender, flavorful meatballs made with ground beef and pork, simmered in a rich tomato sauce and served over perfectly al dente spaghetti. This recipe combines time-tested techniques—a panade for moisture, careful browning, and a long simmer—for a hearty, satisfying meal any night of the week.
Prep 30 minutes · Cook 60 minutes · · Serves 4-6
Ingredients
- 1 lb spaghetti
- 4 quarts water, for boiling pasta
- 1 tablespoon kosher salt, for pasta water
- For the sauce:
- 3 tablespoons extra-virgin olive oil
- 5 garlic cloves, thinly sliced
- 1/2 medium yellow onion, finely chopped
- 2 (28-ounce) cans whole peeled tomatoes
- 1/4 cup dry red wine
- 1/4 cup fresh basil leaves, plus more for serving
- 1/4 teaspoon crushed red pepper flakes
- 1/2 teaspoon dried oregano
- Kosher salt and freshly ground black pepper, to taste
- For the meatballs:
- 1 lb ground beef (preferably 20% fat)
- 8 oz ground pork
- 3 thick slices day-old white bread, crusts removed, soaked in 1/2 cup whole milk
- 2 large eggs, lightly beaten
- 1/2 medium onion, grated
- 3 garlic cloves, finely minced
- 1/2 cup finely grated Parmesan, plus more for serving
- 1/4 cup finely chopped fresh parsley, plus more for serving
- 3/4 teaspoon dried oregano
- 1/4 teaspoon crushed red pepper flakes
- 1/4 teaspoon ground nutmeg
- 1 1/2 teaspoons kosher salt
- 1/2 teaspoon freshly ground black pepper
- 2 tablespoons extra-virgin olive oil, for browning
Instructions
- 1. Make the sauce: Heat olive oil in a large, heavy pot over medium heat. Add the sliced garlic and cook, stirring occasionally, until just fragrant and lightly golden at the edges, about 2–3 minutes. Add the onion and cook until softened, about 3 minutes. Add the canned tomatoes, crushing them with your hands as you add them, along with their juices. Stir in the red wine, basil, crushed red pepper flakes, and oregano. Season with salt and pepper. Bring to a vigorous simmer, then reduce heat to low and simmer gently, stirring occasionally, while you prepare the meatballs.
- 2. Make the panade: In a medium bowl, combine the milk-soaked bread and use your fingers or a fork to break it into a smooth paste. Let it sit for 10 minutes so the bread fully absorbs the milk.
- 3. Mix the meatballs: In a large bowl, combine the ground beef and ground pork. In a separate bowl, mix together the eggs, grated onion, minced garlic, Parmesan, parsley, oregano, red pepper flakes, nutmeg, salt, and pepper. Add the panade to the egg mixture and stir to combine. Add the egg-panade mixture to the meat and gently mix with your hands until just incorporated. Do not overmix or the meatballs will be tough.
- 4. Form the meatballs: Using a roughly 3-tablespoon scoop or a 1/4-cup measure, portion out the meat mixture and roll gently between lightly oiled hands into smooth balls about 1.5 inches in diameter. You should have about 16–20 meatballs. Arrange on a rimmed baking sheet.
- 5. Brown the meatballs: Heat 2 tablespoons olive oil in a large skillet over medium-high heat. Working in batches to avoid crowding, brown the meatballs on all sides, about 3–4 minutes total per batch. Do not cook them through; they will finish cooking in the sauce.
- 6. Simmer meatballs in the sauce: Transfer the browned meatballs and any pan juices to the tomato sauce. Stir gently to ensure the meatballs are mostly submerged. Bring to a gentle simmer, cover, and cook, stirring occasionally and scraping the bottom of the pot, until the meatballs are cooked through and the sauce is rich and flavorful, 35–45 minutes. Taste and adjust seasoning with salt and pepper.
- 7. Cook the spaghetti: Bring a large pot of water to a boil and season generously with salt. Add the spaghetti and cook, stirring occasionally, until al dente according to package directions. Reserve 1 cup of pasta cooking water before draining.
- 8. Combine and serve: Add several ladles of tomato sauce to the drained pasta and toss to coat, adding pasta cooking water a splash at a time as needed until the sauce clings to the noodles. Divide the sauced pasta among shallow bowls, top with meatballs and additional sauce, and finish with a sprinkle of grated Parmesan and fresh parsley or basil.
Variations
- Use a blend of beef, pork, and veal (equal thirds) for an especially tender, traditional meatball texture.
- Substitute Italian sausage for all or part of the ground pork to add fennel and spice flavor.
- For a weeknight shortcut, broil meatballs on an oiled baking sheet for 3–4 minutes until browned on top, then transfer directly to the simmering sauce.
- Use tomato passata in place of canned whole tomatoes for a smoother, brighter-tasting sauce.
- Add finely chopped cremini mushrooms and carrots to the sauce for extra depth and body.
- Stir a tablespoon of ricotta cheese into the meatball mixture for added moisture and tenderness.
- Use bucatini or thin spaghetti instead of regular spaghetti.
- For a dairy-free version, omit the Parmesan from the meatballs and sauce and add a teaspoon of soy sauce for umami depth.
- For a richer sauce, simmer for 2–3 hours over very low heat, adding a splash of water if it gets too thick.
Troubleshooting
- Why are my meatballs tough and dense? The mixture was likely overmixed or packed too tightly; mix the ingredients only until just combined and roll gently with light hands.
- Why did my meatballs fall apart while browning? They may need more binding; ensure the panade is well incorporated and the eggs are fully mixed in before adding to the meat, and let the meatballs rest a few minutes after forming before browning.
- Why is my tomato sauce too acidic? The sauce may not have simmered long enough; continue cooking over low heat for an additional 20–30 minutes to mellow the acidity, or add a small pinch of sugar to balance.
- Why is my sauce watery and thin? The sauce needs more time to reduce; remove the lid and simmer over medium-low heat, stirring frequently, until it reaches your desired consistency.
- Why are my meatballs dry inside even though they look browned? They were likely overcooked during browning; the goal when browning is only to develop color on the outside, as the meatballs will finish cooking through in the simmering sauce.
- Why is my pasta clumping together after draining? Pasta begins to stick as it cools; toss it immediately with a ladle or two of sauce as soon as it is drained, or reserve some pasta cooking water to loosen it before saucing.
- Why does the sauce stick to the bottom of the pot? The heat is too high or the sauce is too thick; reduce the heat to low, add a splash of water or pasta cooking liquid, and scrape the bottom of the pot with a wooden spoon.
- Why do my meatballs lack flavor? The meat mixture may be under-seasoned; always taste the seasoning by cooking a small pinch of the mixture in a skillet before forming all the meatballs, and adjust salt and spices accordingly.