Meatball Soup with Pasta, Spinach, and Parmesan Recipe
Introduction
This hearty meatball soup combines tender meatballs, savory tomato broth, and tender pasta to create a comforting meal perfect for any day. With fresh spinach and a touch of cream, it’s both flavorful and satisfying for the whole family.

Ingredients
- 1 recipe of homemade meatballs or 18-20 oz. bag of frozen meatballs, thawed
- 1 tablespoon olive oil
- 1 yellow onion, diced
- 6 cloves garlic, minced
- 1 tablespoon Italian seasoning
- 2 tablespoons tomato paste
- 32 oz. chicken broth
- 28 oz. can crushed tomatoes
- 8 oz. uncooked rotini pasta (about 2 1/2 cups)
- 2 cups baby spinach
- 1/2 cup heavy cream
- Kosher salt, to taste
- Fresh cracked pepper, to taste
- Shaved Parmesan and freshly chopped parsley for garnish
Instructions
- Step 1: Prepare your meatballs using your favorite homemade recipe or thaw and cook frozen meatballs according to the package directions.
- Step 2: Heat the olive oil in a large pot over medium heat. Add the diced onion along with salt and pepper, cooking for 6-8 minutes until the onions begin to brown and caramelize.
- Step 3: Stir in the minced garlic, Italian seasoning, tomato paste, salt, and pepper. Cook while stirring frequently for about 1 minute.
- Step 4: Pour in a few splashes of chicken broth and use a spoon to scrape and loosen the browned bits from the bottom of the pot.
- Step 5: Add the remaining chicken broth, crushed tomatoes, uncooked rotini pasta, and cooked meatballs. Season with salt and pepper to taste.
- Step 6: Bring the soup to a simmer over medium-high heat. Reduce heat to low, cover, and simmer for 12-15 minutes until the pasta is tender but still firm (al dente).
- Step 7: Stir in the baby spinach and heavy cream. Cook until the spinach wilts and the soup is heated through.
- Step 8: Adjust seasoning with additional salt and pepper if needed. Serve garnished with shaved Parmesan and freshly chopped parsley.
Tips & Variations
- Use ground beef, pork, or turkey for your meatballs depending on your preference.
- For a lighter version, substitute the heavy cream with half-and-half or a splash of milk.
- Add extra vegetables such as diced carrots or celery for more texture and nutrition.
- If you prefer gluten-free, use gluten-free pasta or omit it entirely and serve the soup with crusty bread.
Storage
Store leftover soup in an airtight container in the refrigerator for up to 3 days. Reheat gently on the stove over low heat, adding a splash of broth or water if the soup has thickened. Avoid freezing cream-based soup as the texture may change.
How to Serve

Serve this delicious recipe with your favorite sides.
FAQs
Can I make this soup without meatballs?
Yes, you can omit the meatballs and add more vegetables or beans for a vegetarian version. Adjust seasoning as needed to enhance the flavors.
What pasta works best in this soup?
Rotini is great for holding the sauce, but you can also use small pasta shapes like ditalini, macaroni, or even small shells. Just ensure the pasta size allows it to cook evenly within the soup.
Print
Meatball Soup with Pasta, Spinach, and Parmesan Recipe
- Total Time: 35 minutes
- Yield: 8 servings 1x
Description
This hearty Meatball Soup combines tender homemade or frozen meatballs with a savory tomato and chicken broth base, infused with aromatic garlic, Italian seasoning, and sweet caramelized onions. Rotini pasta adds delightful texture, while creamy heavy cream and fresh baby spinach bring richness and color to this comforting and satisfying soup perfect for any occasion.
Ingredients
Meatballs
- 1 recipe of homemade meatballs or 18–20 oz. bag of frozen meatballs, thawed
Soup Base
- 1 tablespoon olive oil
- 1 yellow onion, diced
- 6 cloves garlic, minced
- 1 tablespoon Italian seasoning
- 2 tablespoons tomato paste
- 32 oz. chicken broth
- 28 oz. can crushed tomatoes
- 8 oz. (about 2 1/2 cups) uncooked rotini pasta
- 2 cups baby spinach
- 1/2 cup heavy cream
- Kosher salt, to taste
- Fresh cracked pepper, to taste
Garnish
- Shaved Parmesan cheese
- Freshly chopped parsley
Instructions
- Prepare Meatballs: Use your preferred homemade Italian meatballs recipe, an air fryer meatballs recipe, or thaw and cook an 18-20 oz. bag of frozen meatballs according to package instructions to have cooked meatballs ready.
- Sauté Onions: Heat 1 tablespoon olive oil in a large pot over medium heat. Add diced yellow onion along with a pinch of kosher salt and freshly cracked pepper. Cook, stirring occasionally, for 6-8 minutes until the onions begin to brown and caramelize, deepening their flavor.
- Add Aromatics: Stir in the minced garlic, Italian seasoning, tomato paste, and additional salt and pepper. Cook while stirring frequently for 1 minute to release the aromas and enhance the tomato paste’s richness.
- Deglaze: Pour in a few splashes of chicken broth to loosen and scrape up the flavorful browned bits from the bottom of the pot, ensuring nothing is wasted.
- Combine Ingredients: Add the remaining chicken broth, crushed tomatoes, uncooked rotini pasta, and cooked meatballs to the pot. Season with salt and pepper as desired and stir to combine.
- Simmer Soup: Bring the soup to a simmer over medium-high heat. Once simmering, reduce the heat to low, cover, and cook for 12-15 minutes until the pasta is tender but still al dente.
- Add Spinach and Cream: Stir in the baby spinach and heavy cream, cooking just until the spinach wilts and the soup is warmed through, adding a creamy texture and freshness to the dish.
- Final Seasoning and Garnish: Taste the soup and adjust seasoning with salt and pepper if needed. Ladle into bowls and garnish with shaved Parmesan cheese and freshly chopped parsley before serving.
- Enjoy and Review: Serve hot and enjoy the comforting Meatball Soup. If you loved this recipe, consider leaving a 5-star rating and review to share your feedback!
Notes
- You can substitute frozen meatballs with homemade meatballs for enhanced flavor and freshness.
- If you don’t have rotini pasta, small shapes like ditalini or elbow macaroni work well.
- For a lighter version, use half-and-half or milk instead of heavy cream.
- Adjust seasoning gradually, especially salt, to suit your taste preferences.
- This soup stores well and tastes great reheated the next day.
- Prep Time: 10 minutes
- Cook Time: 25 minutes
- Category: Soup
- Method: Stovetop
- Cuisine: Italian
Keywords: Meatball Soup, Italian Soup, Comfort Food, Easy Soup Recipe, Rotini Pasta Soup, Creamy Tomato Soup, Homemade Meatballs

