
This Italian Meatball Spaghetti Stack transforms simple ingredients into a comforting, cheesy, layered pasta bake that's become my Sunday dinner tradition. The combination of homemade meatballs and creamy tomato sauce creates a dish that's both familiar and special enough for gatherings.
I first created this recipe when hosting my Italian inlaws for dinner. They were skeptical about the cream of mushroom addition but ended up asking for the recipe before they left. Now it's requested at every family gathering.
Ingredients
- Ground beef: Provides the foundation for tender juicy meatballs, use 80/20 for best flavor
- Bread crumbs: Help bind the meatballs while keeping them light, avoid panko for this recipe
- Parmesan cheese: Adds savory depth to both meatballs and sauce, choose freshly grated for best results
- Egg: Works as the essential binder for perfect meatball texture
- Ketchup: Adds subtle sweetness and acidity to balance the meat
- Chopped onion: Provides aromatic flavor and moisture
- Tomato sauce: Forms the base of our signature sauce, look for no salt added varieties
- Cream of mushroom soup: Creates a velvety richness without heavy cream
- Dried oregano: Brings authentic Italian flavor, use fresh if available by tripling the amount
- Garlic powder: Infuses flavor throughout without overwhelming the dish
- Spaghetti: Creates the perfect base to capture all the sauce, fresh or dried pasta works well
Step-by-Step Instructions
- Prepare the meatballs:
- Combine ground beef with bread crumbs, Parmesan, egg, ketchup, onion, garlic powder, and black pepper in a large bowl. Use your hands to mix gently until just combined, being careful not to overwork the meat which can make meatballs tough. Roll mixture into 1inch balls using slightly wet hands to prevent sticking. You should get approximately 24 meatballs from this mixture.
- Brown the meatballs:
- Heat a large skillet over medium heat. Add meatballs in a single layer, working in batches if necessary to avoid overcrowding. Cook for 2 minutes on each side, turning gently with a spatula until browned all over. They don’t need to be fully cooked through as they’ll finish in the oven. Transfer to a paper towel-lined plate.
- Create the sauce:
- In a medium saucepan, combine tomato sauce, cream of mushroom soup, Parmesan cheese, oregano, garlic powder, and black pepper. Stir well to incorporate the cream soup with the tomato sauce. Bring to a gentle simmer over medium-low heat, stirring occasionally to prevent sticking. Allow to cook for 15 minutes until slightly thickened and flavors have melded together.
- Prepare the pasta:
- Bring a large pot of salted water to a rolling boil. Add spaghetti and cook according to package directions until al dente, typically 9 to 11 minutes. Drain well but do not rinse as the starch helps the sauce adhere to the pasta. Toss with a small drizzle of olive oil to prevent sticking if not using immediately.
- Layer your masterpiece:
- Preheat oven to 375°F. Spray a 9x13 inch baking dish with nonstick cooking spray. Spread half the cooked spaghetti in an even layer on the bottom of the dish. Top with half the meatballs distributed evenly. Pour half the sauce over the meatballs, making sure to cover everything. Repeat with remaining spaghetti, meatballs, and sauce, creating a second complete layer.
- Bake to perfection:
- Cover the baking dish with aluminum foil and bake for 20 minutes. Remove foil and sprinkle an additional 1/4 cup of Parmesan cheese over the top if desired. Return to oven, uncovered, for 5 more minutes until cheese is melted and edges are bubbling. Allow to rest for 5 minutes before serving to let the layers set.

The cream of mushroom soup is my secret ingredient that elevates this dish beyond ordinary spaghetti and meatballs. My grandmother would be scandalized by this American addition but even she admitted it creates a silky texture that balances the acidity of the tomatoes perfectly. The first time I served this at a potluck it disappeared faster than any other dish.
Make Ahead Magic
This dish shines as a make ahead meal. Prepare everything through the layering step then cover tightly with plastic wrap and refrigerate for up to 24 hours. When ready to cook, remove from refrigerator 30 minutes before baking to take the chill off, then add an extra 10 minutes to the covered baking time. For longer storage, freeze the unbaked casserole tightly wrapped for up to 3 months. Thaw overnight in the refrigerator before baking.
Customization Corner
While this recipe is delicious as written, it’s also incredibly adaptable. For a lighter version, substitute ground turkey for beef and whole wheat pasta for regular spaghetti. Vegetable lovers can add finely chopped bell peppers, spinach, or grated zucchini to the sauce. For a spicier kick, incorporate red pepper flakes or Italian sausage in place of half the ground beef. You can even swap the spaghetti for penne or rigatoni if you prefer easier serving.

Serving Suggestions
This hearty dish deserves thoughtful accompaniments to create a balanced meal. A simple green salad with a light vinaigrette cuts through the richness perfectly. Garlic bread is essential for sopping up every last bit of the creamy sauce. For a full Italian restaurant experience, start with an antipasto platter featuring marinated vegetables, olives, and cured meats. A chilled glass of Chianti or Sangiovese complements the tomato base wonderfully, while kids will enjoy sparkling water with a squeeze of lemon.
The Leftover Transformation
Leftovers of this dish might be even better than the original meal. The flavors continue to develop overnight, creating an even more complex taste experience. Reheat individual portions in the microwave, covered with a damp paper towel to maintain moisture. For a complete transformation, slice cold leftovers into squares and pan fry them until crispy on both sides for meatball spaghetti cakes. Top with a fried egg for an indulgent brunch option that will wow weekend guests.
Frequently Asked Questions
- → How can I prevent the meatballs from falling apart?
Ensure you mix the ingredients thoroughly and use fresh breadcrumbs to bind the meatballs. Chilling them briefly before cooking can also help maintain their shape.
- → What substitutions can I make for cream of mushroom soup?
You can replace it with heavy cream, a roux-based sauce, or another creamy canned soup like cream of chicken or celery for a slightly different flavor.
- → Can I use other types of pasta for this dish?
Yes, you can substitute spaghetti with linguine, fettuccine, or even penne for a different texture while maintaining the rich layers.
- → How do I store and reheat leftovers?
Store leftovers in an airtight container and refrigerate for up to three days. Reheat in the oven at 350°F (175°C) for 10-15 minutes or in the microwave until heated through.
- → What side dishes pair well with this spaghetti stack?
Pair this dish with a fresh garden salad, roasted vegetables, or garlic bread for a balanced meal. A glass of red wine complements it beautifully as well.
- → Can I make this dish ahead of time?
Absolutely. Assemble the dish up to the baking step and refrigerate it for up to 24 hours. Bake it when you're ready to serve.