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!
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.

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.

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.

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.
- 📘 Find this recipe on page 25 of my 2nd cookbook, Let’s Eat!
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.

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
- Zuppa Toscana Soup
- Chicken Meatball Soup
- Sausage Gnocchi Soup
- Bacon Mac and Cheese
- Creamy Garlic Chicken
- Chicken Taco Soup
Get My Free E-Book!
- I’ve got a FREE e-Book with 7 super popular dinner recipes! Click here to join my email list and I’ll send your e-Book right over!
- And be sure to follow me on Instagram, Pinterest, & Facebook!
Tried This Recipe?
Leave a review, I love hearing your feedback! ⭐⭐⭐⭐⭐

Meatball Soup
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.
- 📘 Find this recipe on page 25 of my 2nd cookbook, Let's Eat!
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
Get my Cookbooks! 










OMGosh! I’ve never had meatball soup before and I’m glad I chose this recipe that Google suggested. I made two variations. One being I used all Venison, secondly, I used canned fire roasted tomatoes. And I’ll say it again OMGosh! This soup has so much flavor, and so satisfying. We’re stuffed! But I want to go back for a few more bites.
Absolutely Delicious!
I love those two tweaks with the venison and fire roasted tomatoes! I’m so happy you found this recipe Sullen, thanks so much for the great review!
I am so looking forward this next week for a crowd. One question, could I use red pepper flakes rather than hot sauce?
Hi Denise, the hot sauce is used as a flavor enhancer, not so much for heat! But if you don’t have it, you can skip it, and red pepper flakes can be used if you’d like a little kick!
Could I avoid heavy cream since I’m adding riccota when serving ?
You can, it won’t be quite the same but you can! 🙂
ive never once rated an online recipe but this deserves it! so easy to make and so so so tasty. We didnt have ricotta so I topped it off eith more parmesan and it was wonderful! Otherwise made exactly as recipe is written and dont need to change a thing
I’m so happy this was such a hit Stacie! Thanks so much for taking the time to leave a comment and review, it’s much appreciated!😃
Fantastic!! Question: if we use frozen meatballs (I made extra for next time and froze them), do we pan fry them from frozen and just cook longer, or thaw first?
Hi Rachel! I would thaw them first! 😊 I don’t think they’ll sear well from a frozen state.
So, so good!! Going into my permanent rotation.
EXCELLENT! I am so happy to hear that Mandy, thank you!!
I just made this to take with me cabining, what a great recipe! The only thing I left out was the hot sauce, but I put a little more chili flakes instead. I also halved the recipe because that original one sounds like A Lot! Really tasty, almost sort of smokey, and bet it will be awesome to heat up on a cold cabin getaway!
I’m so feeling the cozy cabin vibes Mimi, I love it! Thanks so much for the great review, have fun!❤️
This soup is so good. I was looking for a great meatball soup. I found it here. My boyfriend love it also. Thank you for a great recipe.
You’re very welcome Natalia, I’m so happy you and your boyfriend liked the soup! Thanks so much for the great comments😀
This soup is unreal! Whenever I make it everyone wants some. I substitute the spinach for kale because I do not like spinach and the kale holds well in this soup. Super delicious and always tastes amazing. A go to recipe especially in the winter. Definitely recommend this soup, so yummy 😋
Thanks so much Leanne, I’m so happy it was such a hit. This is one of my favorite soups!😃
This might be my favorite soup of all time… Now my kids want meatballs in every soup. Sometimes I add gnocchi in place of pasta 🙂
Wahooo! It sounds like it was a huge hit Stacey, nice work. I love that you use gnocchi, thanks so much for the great review!💗