I absolutely love this Meatball Soup Recipe because it hits all the cozy comfort food notes—savory meatballs swimming in a flavorful tomato broth with tender pasta and a touch of creamy spinach. It’s one of those dishes you’ll keep coming back to, especially on chilly days when you want something heartwarming yet not fussy to make. I remember the first time I tried this, I was amazed how simple ingredients could come together to create such a satisfying bowl.

You’ll find that this Meatball Soup Recipe is a fantastic family pleaser and perfect for meal prep since it tastes even better the next day. Plus, whether you’re pulling out homemade meatballs or using frozen ones, the soup is incredibly forgiving and easy to whip up on a weeknight. Trust me, once you get the hang of it, it becomes a go-to that you’ll reach for again and again.

❤️

Why You’ll Love This Recipe

  • Ultimate Comfort Food: Warm, hearty, and filling—a perfect meal to cozy up with any time.
  • Flexible Ingredients: Works beautifully with homemade or frozen meatballs, making it super convenient.
  • Layered Flavors: Each step seasons the soup perfectly, so every spoonful bursts with flavor.
  • Family Friendly: Simple ingredients and approachable flavors that kids and adults alike go crazy for.

Ingredients You’ll Need

These ingredients come together in a harmony of flavors and textures that make this Meatball Soup Recipe a standout. I always recommend using fresh garlic and good-quality broth if you can—it makes all the difference.

  • Meatballs: Homemade meatballs add freshness, but frozen ones work just as well and save time.
  • Olive oil: Use extra virgin for more flavor, especially when sautéing the onions and garlic.
  • Yellow onion: Adds sweetness and depth when caramelized properly—don’t rush this step!
  • Garlic: Fresh minced garlic gives that punch of aroma and rich flavor.
  • Italian seasoning: A blend of herbs that brings warmth and classic Mediterranean notes.
  • Tomato paste: Concentrates the tomato flavor and adds body to the broth.
  • Chicken broth: Use low sodium so you can control the saltiness of the soup.
  • Crushed tomatoes: Adds tang and texture to the base of the soup.
  • Uncooked rotini pasta: Its spiral shape holds onto the broth beautifully, making every bite saucy.
  • Baby spinach: Adds a lovely pop of color and nutrients that meld perfectly with the creamy finish.
  • Heavy cream: Adds richness and smoothness without overpowering the soup.
  • Kosher salt & fresh cracked pepper: Essential seasonings to build layers of flavor at every step.
  • Shaved Parmesan & parsley: Garnishes that add a fresh, salty, and herbaceous finish.
Note: You’ll find the complete list of ingredients, along with their exact measurements, in the printable recipe card at the bottom of this post.

Variations

I love how adaptable this Meatball Soup Recipe is—you can easily switch out ingredients to suit your taste or dietary needs. It’s one of those recipes where experimenting can actually be really fun.

  • Vegetable swap: I’ve added kale instead of spinach for a heartier bite, and it was fantastic.
  • Meatball choices: Turkey or chicken meatballs work well if you want a leaner option.
  • Spicy kick: Adding a pinch of red pepper flakes wakes up the soup with gentle heat—my family enjoys this tweak!
  • Dairy-free version: Skip the heavy cream and add coconut milk for a lovely richness without dairy.

How to Make Meatball Soup Recipe

Step 1: Sauté your aromatics until perfectly caramelized

Start by heating olive oil over medium heat in a large pot. Add diced yellow onions with a pinch of salt and pepper. Stir occasionally, letting the onions brown and caramelize gently for about 6-8 minutes—this step really builds the base flavor of your soup. Don’t rush it; those golden edges bring out the sweetness that balances the tomato tang later on.

Step 2: Incorporate garlic, Italian seasoning, and tomato paste

Add minced garlic, Italian seasoning, tomato paste, and a little more salt and pepper. Stir constantly for about 1 minute until everything smells aromatic and the tomato paste darkens slightly. This quick sauté helps deepen the flavors and prevents the garlic from burning, which can turn bitter.

Step 3: Deglaze and build your broth

Pour a few splashes of chicken broth into the pot and use your spoon to scrape up all the tasty browned bits stuck to the bottom—this is where so much flavor lives. Then, add the remaining chicken broth, crushed tomatoes, uncooked pasta, and meatballs to the pot. Season again with salt and pepper to taste.

Step 4: Simmer until pasta is al dente and flavors meld

Bring the soup to a gentle simmer over medium-high heat, then lower the heat and cover the pot. Cook for 12-15 minutes until the pasta is just tender but still has a slight bite—al dente texture is key here. You’ll notice the broth thickening and the flavors melding beautifully during this stage.

Step 5: Finish with spinach, cream, and season well

Stir in baby spinach and heavy cream, cooking just until the spinach wilts and the soup is heated through. This last step adds creaminess and a fresh pop of green to your dish. Give it one last taste and adjust the salt and pepper to your liking before serving.

👨‍🍳

Pro Tips for Making Meatball Soup Recipe

  • Salt in Layers: Season your soup in stages to ensure balanced flavor throughout, not just at the end.
  • Don’t Overcook Pasta: Keep an eye on the pasta to prevent it from getting mushy, especially since it continues softening if you let it sit.
  • Use a Parmesan Rind: If you have one lying around, simmer it with the soup for extra umami and depth.
  • Adjust Thickness: Add broth or cream if the soup gets too thick while cooking or when reheating leftovers.

How to Serve Meatball Soup Recipe

Meatball Soup, hearty meatball soup recipe, cozy soup with meatballs, tomato-based meatball soup, easy family dinner soup A white bowl filled with a creamy orange soup that has rotini pasta spirals and three brown meatballs spread evenly on top. Small green spinach leaves and tiny black pepper specks float in the thick soup. A silver spoon rests on the edge of the bowl, partially dipped in the soup. The bowl sits on a white marbled surface with a white and black striped cloth beneath it.

Garnishes

I always finish this soup with generous shavings of Parmesan and a sprinkle of fresh parsley. The cheese adds a salty bite that complements the meatballs, while parsley brightens the whole bowl. Sometimes, I throw on a few chili flakes if the mood strikes for a little extra heat.

Side Dishes

My favorite sides with this Meatball Soup Recipe are crusty bread or garlic knots—perfect for soaking up all that rich broth. A simple green salad with a vinaigrette also balances the meal nicely if you want something lighter on the side.

Creative Ways to Present

For special occasions, I like serving this soup in mini bread bowls or even in clear glass mugs for an elegant presentation. Adding a swirl of cream and a fresh basil leaf on top makes it feel restaurant-worthy while still being homey and inviting.

Make Ahead and Storage

Storing Leftovers

I store leftover meatball soup in airtight containers in the fridge for up to 3 days. The flavors actually deepen overnight, so it makes fantastic next-day lunch or dinner. Just make sure to stir before reheating to redistribute the cream and spinach evenly.

Freezing

Freezing works well if you omit the heavy cream before freezing and add it fresh when reheating. I usually pack individual portions in freezer-safe containers and thaw overnight in the fridge before gently warming on the stove.

Reheating

To reheat, warm the soup slowly on the stovetop over medium-low heat, stirring occasionally. This helps keep the meatballs tender and the pasta from getting too mushy. I add a splash of broth or cream if the soup seems too thick during reheating.

FAQs

  1. Can I use frozen meatballs directly in this Meatball Soup Recipe?

    Yes! You can use frozen meatballs. Just make sure they are fully thawed or cooked according to package instructions before adding them to the soup to ensure they heat through properly. Adding frozen meatballs directly may result in uneven cooking.

  2. What pasta works best in Meatball Soup Recipe?

    I recommend rotini or any small, medium-shaped pasta that can hold onto the broth well. Spiral shapes like rotini trap the sauce in their grooves, which makes every bite more flavorful and satisfying.

  3. Can I make this soup vegetarian?

    You can make a vegetarian version by swapping meatballs for plant-based alternatives or hearty vegetables like mushrooms or lentils, and using vegetable broth instead of chicken broth. The flavor profile will be different but still delicious and hearty.

  4. How do I prevent the pasta from getting mushy?

    Keep an eye on the pasta cooking time and remove the soup from heat as soon as pasta is al dente. If you plan to store leftovers, slightly undercook the pasta before adding it to the soup, so it doesn’t overcook during reheating.

  5. Can I substitute spinach with kale or other greens?

    Absolutely! Kale, Swiss chard, or even arugula can be great alternatives. Just adjust the cooking time for tougher greens like kale, giving them a bit more time to soften before serving.

Final Thoughts

This Meatball Soup Recipe holds a special place in my kitchen because it’s so approachable yet comforting, it brings everyone around the table without fuss. Whether you’re making it for a quick weeknight meal or a cozy weekend gathering, it never fails to delight. I hope you give it a try and enjoy all the layers of flavor—it’s a soup that feels like a warm hug in a bowl, and I know you’ll treasure it as much as I do.

Print
clock clock iconcutlery cutlery iconflag flag iconfolder folder iconinstagram instagram iconpinterest pinterest iconfacebook facebook iconprint print iconsquares squares iconheart heart iconheart solid heart solid icon

Meatball Soup Recipe

5 Stars 4 Stars 3 Stars 2 Stars 1 Star 5 from 124 reviews
  • Author: Megane
  • Prep Time: 10 minutes
  • Cook Time: 25 minutes
  • Total Time: 35 minutes
  • Yield: 8 servings
  • Category: Soup
  • Method: Stovetop
  • Cuisine: Italian-American

Description

This hearty Meatball Soup combines tender homemade or store-bought meatballs with tender pasta, savory tomato broth, and fresh spinach, finished with a touch of cream and Parmesan for a comforting, flavorful meal perfect for any day of the year.


Ingredients

Units Scale

Meatballs

  • 1 recipe of homemade meatballs or 18-20 oz. bag 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. uncooked rotini pasta (about 2 1/2 cups)

Finishing Ingredients

  • 2 cups baby spinach
  • 1/2 cup heavy cream
  • Kosher salt, to taste
  • Fresh cracked black pepper, to taste
  • Shaved Parmesan, for garnish
  • Freshly chopped parsley, for garnish

Instructions

  1. Prepare the meatballs: Either make homemade Italian meatballs following your favorite recipe, cook air fryer meatballs, or thaw and cook an 18-20 oz. bag of frozen meatballs according to package instructions.
  2. Sauté onions: Heat 1 tablespoon olive oil in a large pot over medium heat. Add the diced yellow onion along with a couple large pinches of salt and pepper. Cook, stirring occasionally for about 6-8 minutes until onions start to brown and caramelize.
  3. Add garlic and seasonings: Stir in the minced garlic, 1 tablespoon Italian seasoning, 2 tablespoons tomato paste, and a couple large pinches of salt and pepper. Cook, stirring frequently, for 1 minute to develop aroma and deepen flavor.
  4. Deglaze the pot: Add a few splashes of chicken broth to the pot and scrape the bottom to lift all the flavorful browned bits.
  5. Add remaining ingredients: Pour in the remaining chicken broth, crushed tomatoes, uncooked rotini pasta, and the cooked meatballs. Season again with salt and pepper to taste.
  6. Simmer the soup: Bring the soup to a simmer over medium-high heat. Then reduce heat to low, cover the pot, and let it simmer gently for 12-15 minutes until the pasta is cooked al dente.
  7. Finish with spinach and cream: Stir in the baby spinach and heavy cream until the spinach wilts and the soup is heated through.
  8. Season and garnish: Taste and adjust salt and pepper as needed. Serve garnished with shaved Parmesan cheese and freshly chopped parsley. Enjoy!

Notes

  • Season the soup moderately at each step to build depth; salt and pepper added with each ingredient ensures well-balanced flavor.
  • If available, adding a Parmesan rind to the pot while simmering adds a rich, nutty depth to the soup.
  • The soup thickens as it sits due to the pasta absorbing liquid; if it becomes too thick while cooking or resting, stir in a splash of broth or cream to loosen it.

Similar Posts

Leave a Reply

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

Recipe rating 5 Stars 4 Stars 3 Stars 2 Stars 1 Star