Classic Spaghetti and Meatballs with Homemade Tomato Basil Sauce
Spaghetti and meatballs is a comforting, crowd-pleasing dinner built on tender, flavorful meatballs simmered in a rich tomato sauce. The meatballs are made with a blend of ground beef and pork, fresh herbs, garlic, Parmesan, and breadcrumbs, then browned to develop deep savory flavor before finishing in the sauce.
The tomato base is simple but bold, featuring onion, more garlic, crushed tomatoes, oregano, and a bay leaf. After a gentle simmer, the sauce becomes velvety and perfectly coats the pasta. A final sprinkle of fresh basil brightens everything up, making each bite hearty, aromatic, and satisfying.
Classic Spaghetti and Meatballs with Homemade Tomato Basil Sauce
Course: DinnerCuisine: Italian-AmericanDifficulty: Medium6
servings25
minutes20
minutes~750
kcalIngredients
1 onion, finely chopped
¼ cup (about 10 g) flat-leaf parsley, chopped
3 cloves garlic
½ cup breadcrumbs
½ cup grated Parmesan
2 eggs
1½ teaspoons salt
¾ teaspoon cracked black pepper
1 pound ground beef
1 pound ground pork
Zest of 2 lemons (optional)
- For the Sauce & Pasta
3 tablespoons olive oil
4 cloves garlic
¼–½ teaspoon red pepper flakes (optional)
Two 28-ounce cans crushed tomatoes
1 bay leaf
½ cup water
1 teaspoon dried oregano
2 teaspoons salt
1 teaspoon black pepper
½ cup fresh basil, chopped
16 ounces (1 pound) spaghetti
- For Serving (Optional)
Grated Parmesan
Chopped basil
Directions
- Prep the aromatics and herbs
Finely chop one onion. Chop ¼ cup (about 10 g) of flat-leaf parsley and set aside. Roughly chop enough basil to measure ½ cup for later. Peel the garlic cloves, keeping three for the meatballs and four for the sauce. Use a garlic press or mince as preferred. - Start the meatball mixture
In a large bowl, combine ½ cup breadcrumbs, ½ cup grated Parmesan, the chopped parsley, and two eggs. Add the three cloves of garlic along with 1½ teaspoons of salt and ¾ teaspoon of cracked black pepper. Mix until evenly combined. - Add the meat
Add 1 pound of ground beef and 1 pound of ground pork. Using clean hands, gently mix until the ingredients are distributed. Avoid overmixing so the meatballs stay tender. If you like, you may mix in the zest of two lemons for extra brightness. - Shape the meatballs
Lightly dampen your hands with water. Portion the mixture into roughly 2-ounce balls (about 18 total). Roll them to smooth and compact them so they hold together during cooking. - Heat the pot
Place a Dutch oven over medium heat and add about 3 tablespoons of olive oil. Let the oil heat until shimmering. - Brown the meatballs
Add the meatballs without overcrowding the pot. Cook for 6–8 minutes, turning occasionally so they brown on all sides. They do not need to cook through; they will finish in the sauce. Transfer the browned meatballs to a plate and repeat with remaining batches. - Prepare the fat for the sauce
After browning, you’ll have flavorful fat left in the pot. Remove about 2 tablespoons, leaving the rest behind for cooking. - Cook the onion
Add the chopped onion and cook for about 5 minutes, stirring occasionally and scraping up the browned bits from the bottom of the pot. - Add garlic and pepper flakes
Stir in the four cloves of garlic. Add ¼ to ½ teaspoon red pepper flakes if using. Cook for 1 minute, stirring constantly so the garlic doesn’t burn. - Add tomatoes and water
Pour in two 28-ounce cans of crushed tomatoes along with ½ cup of water to loosen the sauce. - Season the sauce
Add one bay leaf, 1 teaspoon dried oregano, 2 teaspoons salt, and 1 teaspoon black pepper. Bring the sauce to a simmer over medium heat. - Return the meatballs
Once simmering, gently place the meatballs back into the pot. Do not stir right away; let them begin to firm up. - Simmer
Cover the pot, reduce the heat to low, and simmer for 1 hour. Stir every 15 minutes to ensure even cooking and prevent sticking. - Boil the pasta
Around the 45-minute mark, bring a large pot of generously salted water to a boil. Add 16 ounces (1 pound) of spaghetti and cook according to package directions. - Finish the sauce
After the meatballs have simmered for about an hour, stir in ½ cup of chopped basil. Remove the bay leaf. - Combine pasta and sauce
Drain the pasta, reserving some of the cooking water. Toss the spaghetti with about 2 cups of the sauce, adding a splash of pasta water if needed to loosen. - Serve
Plate the pasta, spoon additional sauce over the top, and add the meatballs. Garnish with grated Parmesan and more chopped basil if desired.
Recipe Video
Notes
- Keeping your hands slightly damp while shaping the meatballs makes rolling easier and helps create a smooth, compact shape that won’t fall apart in the sauce.