The Cozy Cook

Book cover graphicThe Cozy Cookbook is here! Order Now!

Meatball Soup

This Meatball Soup recipe has a savory tomato broth with Italian seasonings, pasta noodles, spinach, and bell peppers. Top each serving bowl with a dollop of ricotta cheese and some Parmesan and you have a restaurant quality meal that your family will love!

Be sure to serve this with a side of No Knead Bread, and try my Chicken Taco Soup recipe next!

A blue dutch oven filled with Meatball Soup with meatballs, pasta, spinach, and parsley.

Meatball Soup

I know that the ingredient list is a little bit long here, but this recipe has the best combination of flavors. My family (picky 5-year old included), loves this recipe. Adding a dollop of Ricotta cheese prior to serving really takes it to the next level. 

PRO TIP: If you have the rind from a block of Parmesan or Romano cheese, add it to the soup while it simmers for next level flavor!

What Makes It Different

The meatballs start out with a panade, which is a starch (breadcrumbs) and a liquid (heavy cream) combined together to form a paste which is gently worked into the meat to keep it extra juicy and flavorful during the cooking process. 

The broth is a combination of chicken broth, beef broth, and blended tomatoes with a perfect seasoning blend. Onions are caramelized slightly in the beginning so that their natural sugars can offset the acidity from the tomatoes.

Diced peppers and spinach add some veggies to the mix and the pasta is can be cooked right in the soup or on the side.

How to Make It

See recipe card below this post for ingredient quantities and full instructions.

Combine meatball ingredients and roll into 1-inch meatballs. Sauté in olive oil in batches for 2-3 minutes. Remove and set aside.

Melt butter in the same pot and add onions. Let them cook slowly over medium-low heat for 10 minutes to caramelize them slightly. Add the bell peppers and cook for 4 minutes.

Browned meatballs next to a pot of sautéed vegetables.

Add the garlic, tomato paste, hot sauce, Worcestershire sauce, and seasonings. Cook for 1 minute. Add the chicken/beef broth and blended tomatoes. Bring to a boil, reduce to a simmer. Simmer uncovered for 15 minutes, or longer to further concentrate the flavor and thicken the soup. Stir occasionally.

Vegetables in tomato paste with tomato broth being added and a bay leaf.

Add the meatballs and pasta and bring to a gentle boil. Cook pasta to al dente. Stir in the heavy cream and add the spinach. Add to serving bowls and serve with Ricotta and Parmesan cheese.

Adding pasta, spinach, and meatballs to Meatball Soup.

Pro Tips

  • Frozen Meatballs can be used instead of making your own. 
  • Add the rind of a block of Parmesan or Romano cheese for added flavor while the soup simmers.
  • 28 oz. crushed tomatoes can be used instead of diced.
  • If you plan on having leftovers, you may want to boil the noodles separately and add them directly to serving bowls as the noodles will continue to absorb broth during storage.
  • The hot sauce doesn’t make the soup hot and you can’t taste the mustard powder or Worcestershire sauce. These are all flavor enhancers in this soup. I use Frank’s Hot Sauce.
  • All chicken broth can be used instead of a combination of chicken and beef if needed or preferred.
  • Milk can be used instead of heavy cream for the meatballs if preferred.

Storage

  • Store in an airtight container and refrigerate for up to 3 days or freeze for up to 3 months.
  • If freezing: I recommend that you boil the pasta separately and add it directly to serving bowls. Freeze the soup without the pasta so that it doesn’t absorb all of the broth and/or get mushy. Boil fresh pasta prior to serving. 

A white bowl with meatball soup topped with ricotta cheese with a spoon on the side.

Tools For This Recipe

(Amazon affiliate links)- Check out all of my kitchen essentials here.

  • 4.5 quart Dutch oven– A great size for this (and most) soup recipes.
  • Box Cheese Grater– Shredding from a block tastes and melts much better than packaged cheese.
  • Spice Rack– This is the one I have, it’s a snap to measure out your seasonings quickly and easily. (Big time saver.)
  • Measuring Spoons I have these magnetic ones which stay nice and organized in my utensil drawer.
  • Pinch Bowls– for measuring out seasonings ahead of time.
  • 16 oz. storage containers – I use these to store/freeze my soups. They have 8 oz. sizes as well. They’re stackable, leak proof, and dishwasher/microwave safe.

Try These Next

Get My Free Meal Plan

I’ve got a Free Meal Plan with 7 of my super popular recipes (complete with grocery list)! Sign up for my email list and I’ll send it over now along with weekly dinner recipes!

And follow me on FacebookInstagram, and Pinterest!

Tried This Recipe?

Leave a review, I love hearing your feedback! ⭐⭐⭐⭐⭐

A wooden spoon scooping up Meatball soup with meatballs and noodles in a tomato based broth.

Meatball Soup

5 from 66 ratings
This Meatball Soup Recipe is has a flavorful tomato-based broth with Italian seasonings, pasta noodles, spinach, and bell peppers. Your family will love it with a dollop of Ricotta and some parmesan cheese!

Ingredients

  • 1 Tablespoon olive oil

Meatballs

  • 1 egg, beaten
  • ½ cup heavy cream, can sub milk
  • 1/2 cup Italian breadcrumbs
  • ¼ cup Parmesan cheese, finely grated into a powder
  • 3 cloves garlic, finely diced
  • 1 teaspoon salt
  • ½ teaspoon pepper
  • ½ lb. ground beef, 80% lean
  • ½ lb. ground pork

Soup

  • 1 tablespoon butter
  • 1 yellow onion, diced
  • ½ cup bell peppers, diced. (Red, green, or both)
  • 3 cloves garlic, minced
  • 2 tablespoons tomato paste
  • 3 cups chicken broth
  • 1 ½ cups beef broth, can sub chicken broth
  • 2 (14.5 oz.) cans diced tomatoes, undrained
  • 1 teaspoon hot sauce, optional
  • 1 teaspoon Worcestershire sauce
  • ½ cup heavy cream
  • 2 cups spinach
  • 1 cup dry pasta, I used cavatappi

Seasonings

  • 1 teaspoon EACH: dried oregano, basil, parsley, mustard powder
  • 1 pinch red pepper flakes
  • Salt/Pepper, to taste

For Serving

  • 8 oz. Ricotta Cheese
  • ½ cup Parmesan Cheese
  • Red Pepper Flakes

Instructions

For the Meatballs

  • Combine the whisked egg and heavy cream in a large bowl. Add the breadcrumbs and stir for 1-2 minutes to form a paste. This is called a “panade” and will make the meatballs super flavorful and tender. Add Parmesan cheese, garlic, salt, and pepper and stir to combine. Add the ground beef and ground pork and gently combine, don’t overwork the meat, we want tender meatballs.
  • Roll the meat into 1-inch balls.
  • Heat the olive oil in a 4 ½ quart soup pot or Dutch oven over medium-high heat.
  • Brown the meatballs in batches for 2-3 minutes, add a splash of olive oil throughout cooking and decrease heat slightly as needed. The inside of the meatballs will finish cooking in the soup.
  • Remove the meatballs and set aside.

For the Soup

  • Place the diced tomatoes in a large bowl and use an immersion blender to blend it to your desired texture, chunks of tomato can be left if preferred. (Alternatively, you can also use a blender.) Set aside.
  • Melt the butter in the same soup pot over medium-low heat. Add the diced onions and cook for 10 minutes, a little longer than normal as this will release some of their sugar which counteracts the acidity of the tomatoes. Stir every few minutes.
  • Add the peppers and cook for 4 minutes. Add the garlic, tomato paste, hot sauce, Worcestershire sauce, and seasonings. Cook for 1 minute.
  • Add in the chicken broth, beef broth, and tomatoes.
  • Bring to a boil, then reduce to a simmer. Let it simmer uncovered for 15 minutes. You can also simmer it longer to contrate the flavor and thicken it more.
  • Stir the soup and bring the soup to a gentle boil. Add the meatballs and the pasta and return it to a gentle boil. Cook until pasta is cooked through, refer to package for cooking time. It may take a little longer since we’re boiling gently. Test-taste a noodle before serving.
  • Reduce heat to low and stir in heavy cream, then add the spinach and cook until wilted, about 1 minute.
  • Transfer to serving bowls and top with ricotta cheese, Parmesan, and red pepper flakes. (You can warm the ricotta in the microwave first if preferred.)

Notes

  • Since the onions take a little while to caramelize, that’s a good time to measure out the seasonings and additional ingredients for the soup.
  • Frozen Meatballs can be used instead of making your own.
  • Add the rind of a block of Parmesan or Romano cheese for added flavor while the soup simmers.
  • 28 oz. crushed tomatoes can be used instead of diced.
  • If you plan on having leftovers: Consider boiling the noodles separately and adding them directly to serving bowls as the noodles will continue to absorb broth during storage.
  • This makes approximately 45 1-inch meatballs
  • The hot sauce doesn’t make the soup hot and you can’t taste the mustard powder or Worcestershire sauce. These are all flavor enhancers in this soup. I use Frank's Hot Sauce.

Nutritional Info is an estimate and is per cup. There are approximately 13 cups in this recipe. It doesn't include the Ricotta/Parmesan for serving

Nutrition

Calories: 222kcal, Carbohydrates: 12g, Protein: 11g, Fat: 15g, Saturated Fat: 7g, Polyunsaturated Fat: 1g, Monounsaturated Fat: 5g, Trans Fat: 1g, Cholesterol: 65mg, Sodium: 741mg, Potassium: 414mg, Fiber: 2g, Sugar: 3g, Vitamin A: 1071IU, Vitamin C: 21mg, Calcium: 90mg, Iron: 2mg
Did you try this recipe?Mention @TheCozyCook on Instagram or tag #thecozycook!

Order The Cozy Cookbook!

Easy Recipes. Extra Comfort.

Order your copy today!

Leave a Comment & Rate this Recipe

Your email address will not be published. Required fields are marked *

Click the Stars to Rate This Recipe




180 comments on “Meatball Soup”

  1. This was sooo good! I had Costco frozen meatballs that needed to be used and they are 1 ½” instead of the 1” homemade ones in this recipe. Because of the size difference I put in 30 instead of the 45 this recipe yields. It was the perfect amount. 

    I did everything as written except added about 1 cup of heavy cream instead of 1/2 I think and used whole fresh spinach leaves. Probably about 5 oz worth which just looked right as I was tossing it in.

    I also did this in an Instant Pot so I sautéed the veggies for less time than the recipe calls for inside the inner pot and added everything in except the cream and Worcestershire sauce. After it had been cooked I added those last two items so as not to scald the milk and keep the Worcestershire mellow. I heated it further on “slow cooker” mode with the lid off for a few minutes to make sure the cream was warmed through. I sprinkled on some Parmassan and my taste buds were in Heaven.

    And for reference in case someone else wants to do this amazing recipe in an Instant Pot, mine is an 8 qrt and everything was cooked on High Pressure for 7 minutes and I allowed a natural release that probably took about 17-20 minutes. And yes, the meatballs were thrown in frozen. With saute time, come-to-pressure time, cooking and natural pressure release time, I’d say it all took about 45 minutes total, so maybe not quicker than the recipe above but it’s good to know you can do it another way if needed or desired. However you choose to cook it, you just should. This recipe was Delicious! I’m definitely keeping this as a fav in my recipe box

    • Thanks so much for sharing your tweaks Missy! I’m so happy you enjoyed it. This is one of my favorite soups. When my I first made it for my husband he admitted he didn’t expect much based on the name. But he was shocked at how delicious it was. Thanks again!💖

  2. This soup was delicious, definitely adding to my recipe favorites.  My only issue was browning the meatballs, they were falling apart.  I ended up broiling the meatballs and adding them to the soup.  I really was skeptical adding hot sauce, but you were right it just added a great flavor and wasn’t hot.  This was delicious. 

    • I’m so happy that you loved the recipe Kimberly! Browning meatballs just requires very extra care, I am super delicate in handling them. Broiling is fine too! I just like to add extra flavor (fond), to the soup pot! 🙂 Thank you so much for the review, I really appreciate it!

  3. Delicious. The meatballs are fall apart tender, my kids loved them. I added Celery at the start and used frozen chopped spinach with the broth/tomato. Definitely will be saving this one. Thanks!

  4. It’s simmering. It’s delicious! Thank you!

  5. One of the best recipes I’ve had in a long tolime
    Well worth the work!

  6. Delicious! Followed the recipe exactly EXCEPT I used frozen mini meatballs (I’m lazy), cooked pasta separately plus added a can of drained white beans (more fiber!).
    I think the addition of the heavy cream puts it over the top. Tastes even better the next day!
    Very impressed!
    Thank you!

  7. One of my favorites! I love the panade meatballs..  always make extra to use later with sauce! 

  8. This soup actually takes a lot of effort. Oh but soooo worth it. It was delicious. And I used everything Gluten free and dairy free and still tastes great. Thank you so much!!!

  9. I made this for dinner and was totally impressed by how delicious it was!!! The seasonings, hot sauce, and worchestershire sauce really elevated the flavour!!! I used some Ikea meatballs instead of homemade (since I had some in the freezer) but next time I plan to try the homemade ones. I also skipped the cream in the broth (for a lower fat option) and added a seeded jalapeno with the pepper. This recipe is defintely going to be one of my regular rotations, I loved it!!!

    • I’m sooo happy that you loved the Meatball soup Joy!! I love that you added a jalapeno in here for a little kick, I’m all about that! Thank you so much for taking the time to leave a review, I REALLY appreciate it!! -Stephanie

  10. One of our family favourites! Making again tonight. I was wondering for the nutritional info is one serving 1 cup? 

As Seen On…