
The first time I made this Creamy Italian Meatball Soup Recipe, I was amazed by how rich and comforting it tasted. Every spoonful was packed with tender meatballs, fresh vegetables, and a silky, creamy broth that felt like pure comfort food.
I love how the flavors blend together while still allowing each ingredient to shine. The combination of savory Italian-seasoned meatballs, mushrooms, spinach, and Parmesan creates a hearty meal that satisfies everyone at the table.
If you’re looking for a cozy homemade soup that tastes like it simmered all day, this recipe is definitely worth trying.
Ingredients
This recipe is divided into two parts: flavorful homemade meatballs and a creamy vegetable-packed soup.
For the Meatballs
- 2 tablespoons olive oil – Used for sautéing the onions and adding richness.
- 3/4 cup minced onion – Softened onions create tender, flavorful meatballs.
- 1 tablespoon minced garlic – Fresh garlic delivers the best flavor.
- 1 pound ground pork – Adds juiciness and a tender texture.
- 1 pound Italian sausage (mild or hot) – Provides classic Italian flavor.
- 1 large egg – Helps bind the meatballs together without making them dense.
- 1/2 cup freshly grated Parmesan cheese – Freshly grated cheese melts and blends better than pre-shredded varieties.
- 1/2 cup plain breadcrumbs or panko – Keeps the meatballs tender and moist.
- 1/3 cup whole milk – Helps soften the breadcrumbs for a softer texture.
- 2 tablespoons finely chopped parsley – Adds freshness and color.
- 1 teaspoon Italian seasoning – Enhances the savory Italian flavors.
- 1/2 teaspoon sea salt – Balances the seasoning.
- 1/2 teaspoon black pepper – Adds mild warmth and depth.
For the Soup
- 2 tablespoons olive oil – For sautéing vegetables.
- 1 1/2 cups diced onion – Creates a flavorful base.
- 2 tablespoons minced garlic – Fresh garlic boosts the overall taste.
- 16 ounces cremini mushrooms, sliced – Adds earthy flavor and texture.
- 3 cups carrot rounds – Provides natural sweetness and color.
- 4 celery ribs, chopped – Adds classic soup flavor.
- 48 ounces beef stock – Creates a rich and savory broth.
- 2 teaspoons Italian seasoning – Complements the meatballs perfectly.
- 1/4 teaspoon red pepper flakes – Optional for a subtle kick.
- 2 cups heavy cream – Creates the luxurious creamy texture.
- 1 cup freshly grated Parmesan cheese – Thickens and flavors the broth.
- 2 tablespoons chopped parsley – Brightens the soup before serving.
- 8 ounces fresh spinach – Fresh spinach works best and stays vibrant.
- Salt and black pepper to taste – Adjust seasoning as needed.
Note: This recipe makes approximately 12 servings, making it ideal for family dinners, meal prep, or freezing for later.
Variations
Want to customize your soup? Try one of these easy variations:
- Use gluten-free breadcrumbs to make the meatballs gluten-free.
- Replace spinach with kale, Swiss chard, or baby arugula.
- Swap mushrooms for zucchini or cauliflower.
- Use ground turkey or chicken instead of pork for a lighter option.
- Add cooked rice, orzo, or small pasta for extra heartiness.
- Use frozen premade meatballs when you’re short on time.
- Replace heavy cream with full-fat coconut milk for a dairy-free version.
- Add extra Parmesan cheese for a richer broth, similar to the creamy texture found in Chicken and Peppers in White Sauce.
- Include sun-dried tomatoes for deeper Italian flavor.

Cooking Time
This soup comes together surprisingly quickly.
- Prep Time: 30 minutes
- Cooking Time: 30 minutes
- Total Time: 1 hour
Equipment You Need
- Large soup pot or Dutch oven – For cooking the soup evenly.
- Medium skillet – Used for sautéing onions for the meatballs.
- Mixing bowls – For combining meatball ingredients.
- Measuring cups and spoons – Ensures accurate measurements.
- Baking sheet – Used for broiling the meatballs.
- Parchment paper – Prevents sticking and simplifies cleanup.
- Small cookie scoop – Helps create evenly sized meatballs.
- Wooden spoon – Perfect for stirring the soup.
How to Make Creamy Italian Meatball Soup Recipe?
This recipe is simple to prepare and delivers restaurant-quality results. Follow each step carefully for the best flavor and texture.
Prepare the Meatball Onion Mixture
Heat olive oil in a skillet over medium heat. Add the minced onion and cook until soft and translucent. Stir in the garlic and cook briefly until fragrant.
Allow the mixture to cool slightly before adding it to the meatball mixture. This prevents the egg from cooking prematurely and helps the flavors blend evenly.

Mix the Meatball Ingredients
In a large bowl, combine the egg, Parmesan cheese, breadcrumbs, milk, parsley, Italian seasoning, salt, and pepper. Stir well until the ingredients are evenly mixed.
Let the mixture sit for a few minutes so the breadcrumbs absorb the liquid. This creates softer and more tender meatballs.

Form the Meatballs
Add the ground pork, Italian sausage, and cooled onion mixture to the bowl. Mix gently until everything is fully combined.
Roll the mixture into small bite-sized meatballs. Keeping them small makes them easier to eat and ensures they cook evenly in the soup.

Broil the Meatballs
Arrange the meatballs on a parchment-lined baking sheet. Leave a little space between each one for even cooking.
Broil for about 8 minutes or until fully cooked and lightly browned. This method creates great flavor without the mess of frying.

Sauté the Soup Vegetables
In a large soup pot, heat olive oil over medium heat. Add onions and cook until softened and slightly caramelized.
Stir in garlic, carrots, celery, and mushrooms. Cook until the vegetables begin to release moisture and develop a deeper flavor.

Build the Broth
Pour in the beef stock and add the Italian seasoning and red pepper flakes. Stir everything together well.
Add the cooked meatballs to the pot and bring the mixture to a gentle simmer. Let the flavors blend together for about 10 minutes.

Add the Creamy Ingredients
Stir in the fresh spinach, heavy cream, Parmesan cheese, and parsley. Mix gently until the cheese melts into the broth.
Allow the soup to simmer for another 5 minutes. The broth will become rich, creamy, and beautifully flavorful.

Taste and Serve
Taste the soup and adjust the salt and pepper as needed. Every broth differs slightly, so seasoning at the end is important.
Serve the soup hot with crusty bread, garlic toast, or a simple green salad for a complete meal.
Additional Tips for Making This Recipe Better
After making this recipe several times, I discovered a few tricks that make it even better:
- I always grate my Parmesan cheese fresh because it melts smoother and tastes richer.
- I prefer using fresh spinach rather than frozen because it keeps a brighter color and fresher flavor.
- I lightly wet my hands when rolling meatballs, which prevents sticking.
- I let the breadcrumb mixture rest before mixing in the meat, which helps create softer meatballs.
- I broil the meatballs instead of frying because it saves time and adds delicious browning.
- I often add extra mushrooms because they create even more savory depth.
How to Serve Creamy Italian Meatball Soup Recipe?
This hearty soup is satisfying enough to serve as a complete meal, but a few additions can make it even more special.
Serve it in large bowls with extra grated Parmesan sprinkled over the top. Add a little fresh parsley for color and freshness. Pair it with warm garlic bread, crusty artisan bread, or homemade breadsticks for dipping. For a lighter meal, serve it alongside a crisp Caesar salad or mixed greens.
If you’re planning a larger comfort-food spread, this soup also pairs well with Crock Pot Cajun Chicken Pasta Recipe for family gatherings or special dinners. A small drizzle of extra virgin olive oil on top also adds a beautiful finishing touch.

Nutritional Information
The following values are approximate per serving:
- Calories: 532 calories
- Protein: 23 grams
- Carbohydrates: 14 grams
- Fat: 43 grams
Make Ahead and Storage
Refrigerating
Store leftover soup in an airtight container in the refrigerator. It will stay fresh for up to 4 days while maintaining its creamy texture and flavor.
Freezing
For best results, freeze the soup before adding the spinach. Store in freezer-safe containers for up to 3 months. Add fresh spinach when reheating.
Reheating
Warm the soup slowly on the stovetop over medium-low heat. Stir occasionally to prevent the cream from separating and add a splash of broth if needed.
Why You’ll Love This Recipe?
This comforting soup quickly becomes a favorite because it combines rich flavor with easy preparation.
- Hearty and Filling: The combination of meatballs, vegetables, cream, and cheese creates a satisfying meal that feels complete on its own. Perfect for lunch or dinner.
- Family-Friendly: Kids and adults both enjoy the tender meatballs and creamy broth. It’s an easy way to get everyone excited about soup night.
- Perfect for Meal Prep: The recipe makes a large batch and stores beautifully. You can enjoy leftovers throughout the week.
- Easy to Customize: Swap vegetables, adjust the spice level, or use different proteins to suit your preferences and dietary needs.
- Rich Italian Flavor: Parmesan, Italian sausage, herbs, garlic, and fresh vegetables come together to create a restaurant-quality soup at home.
Creamy Italian Meatball Soup is the ultimate comfort food recipe. With juicy homemade meatballs, tender vegetables, and a luxurious Parmesan cream broth, it delivers incredible flavor in every bite.
Whether you’re making it for a weeknight family dinner, meal prep, or a cozy weekend meal, this soup is guaranteed to become a regular favorite.

Creamy Italian Meatball Soup Recipe
Ingredients
Method
- Heat olive oil in a skillet over medium heat. Add the minced onion and cook until soft and translucent. Stir in the garlic and cook briefly until fragrant.
- Allow the mixture to cool slightly before adding it to the meatball mixture. This prevents the egg from cooking prematurely and helps the flavors blend evenly.
- In a large bowl, combine the egg, Parmesan cheese, breadcrumbs, milk, parsley, Italian seasoning, salt, and pepper. Stir well until the ingredients are evenly mixed.
- Let the mixture sit for a few minutes so the breadcrumbs absorb the liquid. This creates softer and more tender meatballs.
- Add the ground pork, Italian sausage, and cooled onion mixture to the bowl. Mix gently until everything is fully combined.
- Roll the mixture into small bite-sized meatballs. Keeping them small makes them easier to eat and ensures they cook evenly in the soup.
- Arrange the meatballs on a parchment-lined baking sheet. Leave a little space between each one for even cooking.
- Broil for about 8 minutes or until fully cooked and lightly browned. This method creates great flavor without the mess of frying.
- In a large soup pot, heat olive oil over medium heat. Add onions and cook until softened and slightly caramelized.
- Stir in garlic, carrots, celery, and mushrooms. Cook until the vegetables begin to release moisture and develop a deeper flavor.
- Pour in the beef stock and add the Italian seasoning and red pepper flakes. Stir everything together well.
- Add the cooked meatballs to the pot and bring the mixture to a gentle simmer. Let the flavors blend together for about 10 minutes.
- Stir in the fresh spinach, heavy cream, Parmesan cheese, and parsley. Mix gently until the cheese melts into the broth.
- Allow the soup to simmer for another 5 minutes. The broth will become rich, creamy, and beautifully flavorful.
- Taste the soup and adjust the salt and pepper as needed. Every broth differs slightly, so seasoning at the end is important.
- Serve the soup hot with crusty bread, garlic toast, or a simple green salad for a complete meal.
Notes
- I always grate my Parmesan cheese fresh because it melts smoother and tastes richer.
- I prefer using fresh spinach rather than frozen because it keeps a brighter color and fresher flavor.
- I lightly wet my hands when rolling meatballs, which prevents sticking.
- I let the breadcrumb mixture rest before mixing in the meat, which helps create softer meatballs.
- I broil the meatballs instead of frying because it saves time and adds delicious browning.
- I often add extra mushrooms because they create even more savory depth.






