Few things bring comfort on a chilly day quite like a bowl of soup—and this Creamy Italian Meatball Soup is comfort food at its finest. It’s hearty, creamy, and brimming with tender meatballs, fresh vegetables, and Italian herbs. Every spoonful feels like a warm hug at the dinner table.

The best part? This recipe is simple enough for weeknights but special enough to serve to guests. Made with easy pantry staples and a touch of creaminess, it’s a dish that makes everyone feel right at home.
Recipe Info
| Field | Info |
|---|---|
| Category | Dinner / Soup |
| Prep Time | 20 minutes |
| Cook Time | 40 minutes |
| Servings | 6 servings |
| Calories | ~420 kcal per serving |
Ingredients You’ll Need
For the meatballs:
- 1 lb ground beef (or Italian sausage for extra flavor)
- ½ cup breadcrumbs
- 1 large egg
- ¼ cup grated Parmesan cheese
- 2 garlic cloves, minced
- 1 teaspoon Italian seasoning
- ½ teaspoon salt
- ¼ teaspoon black pepper
For the soup:
- 2 tablespoons olive oil
- 1 small onion, diced
- 2 carrots, sliced
- 2 celery stalks, sliced
- 3 garlic cloves, minced
- 6 cups chicken broth
- 1 (14 oz) can diced tomatoes
- 1 teaspoon dried basil
- 1 teaspoon dried oregano
- ½ teaspoon red pepper flakes (optional, for heat)
- 1 cup small pasta (like ditalini or shells)
- 1 cup heavy cream (or half-and-half for lighter version)
- 2 cups fresh spinach or kale
- Salt and pepper to taste
- Fresh parsley and Parmesan cheese (for garnish)
Step-By-Step Instructions
- Make the meatballs
In a large bowl, mix ground beef, breadcrumbs, egg, Parmesan, garlic, Italian seasoning, salt, and pepper. Roll into small 1-inch meatballs. - Brown the meatballs
Heat 1 tablespoon olive oil in a large pot over medium heat. Cook meatballs in batches until lightly browned on all sides (they don’t need to be fully cooked through). Set aside. - Sauté the veggies
In the same pot, add remaining olive oil. Sauté onion, carrots, and celery for 5 minutes until softened. Stir in garlic and cook 1 minute more. - Build the broth
Add chicken broth, diced tomatoes, basil, oregano, and red pepper flakes. Bring to a gentle simmer. - Add pasta & meatballs
Return the browned meatballs to the pot and stir in pasta. Simmer for 15–20 minutes until pasta is cooked and meatballs are fully done. - Make it creamy
Lower heat and stir in heavy cream. Add spinach and cook just until wilted. Taste and adjust salt and pepper. - Serve & enjoy
Ladle into bowls and garnish with fresh parsley and Parmesan. Serve warm with bread or salad.
Helpful Notes & Tips
- Don’t overwork the meat: Mix gently for tender, juicy meatballs.
- Pasta tip: Cook pasta just until al dente—it will continue softening in the soup.
- Storage: Store leftovers in the fridge for 3–4 days. If making ahead, cook pasta separately and add when reheating to prevent sogginess.
Recipe Variations
- Lighter option: Use ground turkey and half-and-half instead of beef and cream.
- Extra veggies: Add zucchini, bell peppers, or mushrooms for more texture.
- Spicy kick: Use hot Italian sausage in place of beef and add more red pepper flakes.
Serving Suggestions
- Pair with warm, crusty bread for dipping.
- Serve alongside a fresh Caesar salad or caprese salad.
- Top each bowl with extra Parmesan and a drizzle of olive oil for richness.
Conclusion
This Creamy Italian Meatball Soup is cozy, hearty, and bursting with flavor. It’s a family-friendly recipe that turns simple ingredients into something truly special. Perfect for weeknight dinners, Sunday suppers, or anytime you’re craving a comforting bowl of soup, this dish is one you’ll want to make again and again.