On chilly days or long evenings, nothing hits the spot quite like a warm bowl of creamy meatball soup.
It’s rich and comforting, with tender meatballs, soft pasta, a creamy tomato broth, and fresh greens stirred in at the end. Every spoonful feels like a hug.
This is one of those one-pot meals I always turn to when I want something cozy but still full of flavor and texture—and it’s even better with a chunk of crusty bread on the side.
Why I Love This Recipe
Tender, cheesy meatballs – Packed with flavor and perfectly browned.
Creamy tomato broth – Rich, savory, and silky from cream and Parmesan.
One-pot convenience – Fewer dishes, more comfort.
Customizable – Use your favorite pasta, broth, or greens.
Freezer-friendly – Great for leftovers or meal prep.
What You’ll Need (Ingredient Highlights)
Ground beef or pork mix – Adds depth and tenderness to the meatballs.
Breadcrumbs + Parmesan – Help bind and flavor the meatballs.
Egg + garlic + Italian seasoning – Classic, savory flavor boosters.
Celery, onion, garlic – Create the aromatic base for the soup.
Diced tomatoes + broth – Form the hearty, flavorful soup base.
Small pasta – Like ditalini or elbow, perfect for spoonfuls.
Heavy cream + Parmesan – For that rich, creamy finish.
Fresh spinach or basil – Add color, freshness, and nutrients.
Pro Tips Before You Start
Don’t overmix the meatballs – Keep them tender by mixing gently.
Brown, don’t cook through – Just sear the meatballs; they’ll finish in the soup.
Use fresh Parmesan – It melts better and tastes more intense.
Stir pasta often – Prevents it from sticking to the bottom.
Adjust seasoning last – Salt levels change as the soup simmers
How to Make Creamy Meatball Soup
Step 1: Prepare the Meatballs
In a large bowl, mix together ground meat, breadcrumbs, Parmesan, egg, garlic, Italian seasoning, salt, pepper, and parsley.
Gently mix until just combined.
Roll into small meatballs (about 1 inch wide) and set aside.
Step 2: Sear the Meatballs
Heat olive oil in a large pot or Dutch oven over medium heat.
Add the meatballs and sear on all sides for 2–3 minutes until browned.
Remove and set aside.
Step 3: Sauté the Vegetables
In the same pot, add diced onion, chopped celery, and minced garlic.
Cook for 3–4 minutes until softened and fragrant.
Step 4: Build the Soup Base
Stir in the diced tomatoes and broth.
Season with Italian seasoning, salt, and black pepper.
Return the browned meatballs to the pot and let the soup simmer gently for 15 minutes.
Step 5: Cook the Pasta
Add the small pasta and simmer for 8–10 minutes, stirring occasionally, until tender.
Step 6: Add Cream and Cheese
Lower the heat. Stir in the heavy cream and Parmesan.
Let it warm through for another 2–3 minutes.
Step 7: Finish with Greens
Add chopped spinach or basil and stir until wilted.
Taste and adjust seasoning if needed.
Serve hot, topped with extra Parmesan and fresh herbs if desired.
What to Serve It With
Crusty baguette or garlic bread
Side salad with lemon vinaigrette
Roasted vegetables
Grilled cheese sandwich
A glass of red wine or sparkling water with lemon
Variations / Substitutions
Use turkey or chicken – For a lighter take on the meatballs.
Swap pasta – Try orzo, mini shells, or even rice.
Add beans – White beans make it extra hearty.
Spice it up – A pinch of chili flakes adds warmth.
Use kale or arugula – In place of spinach or basil.
Storage & Leftovers
Fridge – Store in an airtight container for up to 4 days.
Freeze – Freeze in portions (without pasta for best texture) for up to 2 months.
Reheat gently – Warm on the stove or microwave; stir well before serving.
Add splash of broth or cream – To refresh texture after storing.
Pasta tip – It may absorb liquid over time; add extra broth if needed.
FAQs
Can I make this ahead of time?
Yes! Just store the meatballs and soup separately, then combine before serving.
Can I freeze it with the pasta?
It’s best to freeze the soup without pasta and cook it fresh when reheating.
What meat works best?
A mix of beef and pork is flavorful, but turkey or chicken also work well.
Can I make it dairy-free?
You can skip the cream and Parmesan, but the soup will be less rich.
Why are my meatballs falling apart?
Make sure to use an egg and breadcrumbs, and don’t overmix the meat mixture.
Can I make it vegetarian?
Yes—skip the meatballs and use white beans or veggie meatballs instead.
Can I double the recipe?
Absolutely—it scales well and makes great leftovers.
Final Thoughts
This creamy meatball soup is everything I love in one pot: bold flavors, cozy textures, and ingredients that come together effortlessly.
It’s nourishing, crowd-pleasing, and perfect for a quiet night in or sharing around the table with loved ones.

Cozy & Creamy Meatball Soup
Ingredients
For the Meatballs:
- 1 pound 450g ground beef (or beef/pork mix)
- ¼ cup breadcrumbs
- ¼ cup grated Parmesan cheese
- 1 egg
- 2 cloves garlic minced
- 1 tsp Italian seasoning
- ½ tsp salt
- ¼ tsp black pepper
- 1 tbsp fresh parsley chopped (optional)
For the Soup:
- 1 tbsp olive oil
- 1 small onion diced
- 2 cloves garlic minced
- 2 celery stalks chopped
- 1 can 14.5 oz diced tomatoes
- 4 cups 1 liter chicken or beef broth
- 1 tsp Italian seasoning
- ½ tsp salt adjust to taste
- ¼ tsp black pepper
- 1 cup small pasta ditalini or elbow
- ½ cup heavy cream
- ½ cup grated Parmesan cheese
- 1 cup fresh spinach or basil chopped
Optional Garnishes:
- Extra Parmesan cheese
- Fresh basil or parsley
- Crushed red pepper flakes
Instructions
- In a bowl, mix together meatball ingredients until just combined. Roll into 1-inch balls.
- Heat olive oil in a large pot.
- Sear meatballs until browned on all sides.
- Remove and set aside.
- In the same pot, sauté onion, celery, and garlic until soft.
- Add diced tomatoes and broth.
- Season with Italian herbs, salt, and pepper.
- See full steps with tips & photos → https://wimpysdiner.net/creamy-meatball-soup/
Notes
- You can make the meatballs ahead and freeze them. Just sear from frozen and extend the simmer time slightly.
- Swap in kale or arugula instead of spinach for a peppery bite.
- Don’t overcook the pasta or it will absorb too much liquid—al dente is best.