Creamy Italian Meatball Soup Recipe
This Creamy Italian Meatball Soup is a hearty and comforting dish perfect for any day of the week. Featuring tender homemade or frozen meatballs simmered in a flavorful tomato and chicken broth base, combined with perfectly cooked rotini pasta, fresh baby spinach, and finished with a touch of rich heavy cream. Garnished with shaved Parmesan and fresh parsley, this soup is an Italian-inspired meal that’s both satisfying and easy to prepare.
- Author: Felix
- Prep Time: 15 minutes
- Cook Time: 30 minutes
- Total Time: 45 minutes
- Yield: 6 servings 1x
- Category: Soup
- Method: Stovetop
- Cuisine: Italian
Meatballs
- 1 recipe homemade Italian meatballs or 18–20 oz. 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
Pasta and Greens
- 8 oz. (about 2 1/2 cups) uncooked rotini pasta
- 2 cups baby spinach
Finishing Touches
- 1/2 cup heavy cream
- Kosher salt, to taste
- Fresh cracked black pepper, to taste
- Shaved Parmesan cheese for garnish
- Freshly chopped parsley for garnish
- Prepare Meatballs: Use your preferred method to make homemade Italian meatballs, air fryer meatballs, or thaw and cook a 18-20 oz. bag of frozen meatballs as per package instructions.
- Sauté Onions: Heat 1 tablespoon olive oil in a large pot over medium heat. Add the diced yellow onion along with a couple of large pinches of salt and pepper. Cook, stirring occasionally for 6-8 minutes, until onions start to caramelize and brown slightly.
- Add Garlic and Seasonings: Stir in 6 cloves of minced garlic, 1 tablespoon Italian seasoning, 2 tablespoons tomato paste, and additional salt and pepper. Cook while stirring frequently for about 1 minute to release aromas and combine flavors.
- Deglaze Pot: Add a few splashes of chicken broth to the pot to loosen and scrape up any browned bits from the bottom. This adds depth and flavor to the soup.
- Add Remaining Liquids and Ingredients: Pour in the rest of the 32 oz. chicken broth, the 28 oz. can of crushed tomatoes, 8 oz. uncooked rotini pasta, and the prepared meatballs. Season again with salt and pepper to taste.
- Cook Pasta and Simmer: Bring the soup to a simmer over medium-high heat. Then reduce heat to low and cover. Let the soup simmer gently for 12-15 minutes, or until the pasta is cooked al dente and the flavors meld together.
- Add Spinach and Cream: Stir in 2 cups of baby spinach and 1/2 cup heavy cream. Cook for another minute or two until the spinach wilts and the soup is heated through.
- Final Seasoning and Serve: Taste the soup and adjust seasoning with salt and pepper as needed. Serve hot, garnished with shaved Parmesan cheese and freshly chopped parsley.
Notes
- You can substitute frozen meatballs for homemade to save time.
- Using fresh spinach gives a nice pop of color and nutrition; kale can also be used.
- For a thicker soup, reduce the amount of chicken broth or let it simmer uncovered for a few extra minutes.
- To make this soup vegetarian, substitute vegetable broth and use plant-based meatballs or extra vegetables instead.
- Leftovers keep well in the refrigerator for up to 3 days; reheat gently on the stovetop.
Keywords: Italian meatball soup, creamy meatball soup, easy Italian soup, comfort food, meatball pasta soup, rotini soup, spinach soup