Hearty Meatball Soup

Why You’ll Love This Recipe

  • The meatballs make it more than a simple soup—think one-pot dinner.
  • Loaded with vegetables and robust flavour, it’s both nourishing and comforting.
  • It’s versatile: swap the meat or veggies, adjust seasoning, and it still hits.
  • Perfect for leftovers—a great batch-cooking choice.
  • Cozy enough for chilly nights yet simple enough for a weeknight.

Ingredients

(Tip: You’ll find the full list of ingredients and measurements in the recipe card below.)
For the meatballs:

  • Ground beef (or beef-pork mix)
  • Breadcrumbs
  • Egg
  • Garlic, minced
  • Parmesan (optional)
  • Italian seasoning (or mix of oregano, basil, thyme)
  • Salt & pepper

For the soup base:

  • Olive oil
  • Onion, chopped
  • Carrots, diced
  • Celery, chopped
  • Garlic, minced
  • Canned tomatoes (diced or crushed)
  • Beef broth (or chicken, if you prefer lighter)
  • Italian seasoning
  • Fresh herbs (like parsley or basil), chopped
  • Optional: small pasta (e.g., ditalini, shells) or beans
  • Salt & pepper to taste
  • Optional garnish: grated Parmesan, fresh basil

Directions

  1. In a medium bowl, combine all meatball ingredients: ground meat, breadcrumbs, egg, garlic, Parmesan, Italian seasoning, salt & pepper. Mix gently until just combined. Form into small meatballs (about 1-inch diameter).
  2. Heat a large soup pot over medium heat, add a little olive oil. Add the chopped onion, carrots and celery. Sauté until the onion is translucent and the vegetables have begun to soften (~5 minutes). Add the garlic and cook for another minute until fragrant.
  3. Add the canned tomatoes (with their juices) and the broth. Stir in Italian seasoning and bring the liquid to a simmer.
  4. Gently drop the meatballs into the simmering soup. Cover (if desired) and let simmer until meatballs are cooked through and tender (~10-15 minutes, depending on size).
  5. If using pasta, stir it in and cook for the amount of time the pasta requires (check the pasta packaging) until al dente. If using beans instead of pasta, stir them in near the end to heat through.
  6. Taste and adjust seasoning with salt and pepper. Stir in chopped fresh herbs.
  7. Ladle into bowls and serve with optional grated Parmesan and fresh basil on top.

Servings and timing

  • Servings: About 6 servings.
  • Prep time: ~15 minutes.
  • Cook time: ~30-35 minutes.
  • Total time: ~45 minutes.

Variations

  • Use ground turkey or chicken instead of beef for a lighter version.
  • Swap pasta for beans (like white beans or chickpeas) to make it gluten-free and higher in fibre.
  • Add spinach or kale during the last 5 minutes for extra greens.
  • Make it creamy: after the meatballs are cooked, stir in a splash of cream or half-and-half.
  • Add extra heat: include red pepper flakes or chopped jalapeño.
  • Use mushrooms, zucchini or bell peppers in the base for added texture and vegetables.

Storage/Reheating

  • Store leftover soup in an airtight container in the refrigerator for up to 3-4 days.
  • To reheat: warm gently in a saucepan over medium heat until heated through. If pasta was included and the soup has thickened too much, add a splash of broth or water.
  • Freezing: It’s best to freeze without pasta (if included) as pasta can become soggy. Let the soup cool completely, then freeze in freezer-safe containers for up to 2-3 months. Thaw overnight in the fridge and reheat; cook fresh pasta separately if desired.

FAQs

How can I make smaller meatballs or larger ones?

You can size your meatballs as you like. Smaller ones cook faster (around 8-10 minutes); larger ones will need more time (~15-20 minutes). Just ensure they’re cooked through.

Can I skip making meatballs and use pre-made ones?

Yes, you can use store-bought pre-cooked meatballs. Add them to the soup and simmer until heated through. Reduce cooking time accordingly.

What if I don’t want pasta in the soup?

You can skip the pasta and instead add beans or extra vegetables. The soup will still be hearty and satisfying. If you remove pasta, you might want to simmer a little longer to let flavours deepen.

How do I prevent the meatballs from falling apart in the soup?

Ensure the meatball mixture is not over-mixed (mix until just combined) and form the meatballs fairly firmly. Also, gently drop them into the simmering soup rather than stirring vigorously right away. Simmer covered for a few minutes to help them set.

Can I make this ahead of time?

Absolutely. You can prepare the meatballs ahead of time and refrigerate until ready to cook. You can also make the soup base and refrigerate, then add meatballs and finish cooking when ready to serve.

Is this soup freezer-friendly?

Yes, it freezes well — especially if you skip pasta before freezing. Cool completely, then freeze in portions. Thaw overnight and reheat gently, adding pasta fresh if you desire.

What sides go well with this soup?

Crusty bread or garlic bread is great for dunking. A crisp green salad helps balance the richness. You could also serve with a side of steamed green beans or roasted vegetables.

How do I know when the meatballs are done?

They should be browned on the outside and no longer pink in the center. You can use a meat thermometer: internal temperature should reach ~74 °C (165 °F) for beef/pork blend. Also, they should float toward the top of the soup.

Can I make this soup vegetarian?

Yes — skip the meatballs and use plant-based meatballs or just add hearty vegetables and beans. Use vegetable broth, and ensure your “meatballs” or protein substitute are cooked through before adding.

Conclusion

This Hearty Meatball Soup is the kind of recipe you’ll reach for when you want comfort, nourishment, and ease all in one pot. With juicy meatballs, a vibrant tomato-based broth, and plenty of vegetables or pasta, it works for family dinners, leftovers, or even as a make-ahead freezer meal. With just a few tweaks, you can make it lighter, vegetarian, or loaded with extra veggies. Give it a try—you’ll have a warm, full bowl of goodness in no time.

Print

Hearty Meatball Soup

Hearty Meatball Soup

5 Stars 4 Stars 3 Stars 2 Stars 1 Star

No reviews

A cozy and flavorful soup filled with tender homemade meatballs, hearty vegetables, and a rich tomato-broth base. Perfect for a comforting, one-pot meal that’s as nourishing as it is satisfying.

  • Author: Laura
  • Prep Time: 15 minutes
  • Cook Time: 30–35 minutes
  • Total Time: 45–50 minutes
  • Yield: 6 servings
  • Category: Soup
  • Method: Stovetop Simmer
  • Cuisine: Italian-American
  • Diet: Halal

Ingredients

  • For the meatballs:
  • 1 lb (450 g) ground beef or beef-mix
  • ½ cup breadcrumbs
  • 1 large egg
  • 2 cloves garlic, minced
  • 2 tbsp grated Parmesan cheese (optional)
  • 1 tsp Italian seasoning (or dried oregano, basil, thyme)
  • Salt and pepper, to taste
  • For the soup base:
  • 2 tbsp olive oil
  • 1 medium onion, chopped
  • 2 carrots, diced
  • 2 celery stalks, chopped
  • 2 cloves garlic, minced
  • 1 can (28 oz / 800 g) diced or crushed tomatoes
  • 6 cups beef broth (or chicken broth for lighter flavor)
  • 1 tsp Italian seasoning
  • 2 tbsp chopped fresh parsley or basil
  • 1 cup small pasta (e.g., ditalini or small shells) or 1 can beans (optional)
  • Salt and pepper, to taste
  • Optional garnish: grated Parmesan, fresh basil

Instructions

  1. In a medium bowl, mix together the ground meat, breadcrumbs, egg, minced garlic, Parmesan, Italian seasoning, salt, and pepper until just combined. Form into 1-inch meatballs and set aside.
  2. Heat olive oil in a large soup pot over medium heat. Add onion, carrots, and celery, and sauté for about 5 minutes until softened. Add garlic and cook for another 30 seconds until fragrant.
  3. Pour in the canned tomatoes and broth. Add Italian seasoning and bring the mixture to a gentle simmer.
  4. Carefully drop the meatballs into the simmering soup. Cover and let cook for 10–15 minutes, or until meatballs are fully cooked and tender.
  5. If using pasta, stir it into the soup and cook according to package instructions until al dente. If using beans, add them during the last few minutes of cooking to warm through.
  6. Season to taste with salt and pepper, then stir in fresh herbs.
  7. Ladle into bowls and garnish with grated Parmesan and fresh basil if desired. Serve hot with crusty bread.

Notes

  • Use ground turkey or chicken instead of beef for a lighter version.
  • To prevent meatballs from falling apart, mix gently and avoid overhandling the meat.
  • For extra greens, stir in spinach or kale during the last few minutes of cooking.
  • To make the soup creamy, stir in ¼ cup of cream or half-and-half after cooking the meatballs.
  • For gluten-free, use gluten-free breadcrumbs and omit pasta or use GF pasta.

Nutrition

  • Serving Size: 1 bowl (about 2 cups)
  • Calories: 430
  • Sugar: 8 g
  • Sodium: 780 mg
  • Fat: 22 g
  • Saturated Fat: 7 g
  • Unsaturated Fat: 13 g
  • Trans Fat: 0.3 g
  • Carbohydrates: 28 g
  • Fiber: 4 g
  • Protein: 30 g
  • Cholesterol: 95 mg
0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments