Hearty Vegetable and Meatball Soup Recipe for Cozy Meals

This cozy Vegetable Meatball Soup is loaded with mini meatballs, ditalini pasta and plenty of vegetables — a satisfying bowl that eats like a full meal. Homemade meatballs, browned and finished in the simmering soup, add depth and heartiness. A parmesan rind simmered in the broth gives exceptional richness. This family-friendly soup is comforting, nutritious and freezer-friendly.

Pot of meatball soup with vegetables, pasta and topped with chopped parsley.

When chilly weather arrives, a hot bowl of soup brings instant comfort. This vegetable meatball soup was inspired by a favorite chunky Italian vegetable soup, but with extra protein from small, flavorful meatballs.

Mini meatballs, carrots, celery, onion, tomatoes, ditalini and spinach combine into a wholesome, balanced soup. Serve with crusty bread or dinner rolls for a complete meal.

Why You Will Love This Vegetable Meatball Soup

  • Protein-packed: Adding meatballs turns a simple vegetable soup into a filling, protein-rich entrée — one serving provides substantial protein.
  • Freezer-friendly: This soup freezes well, making it a convenient option for quick weeknight meals.
  • All-in-one meal: Vegetables, pasta and meatballs make this soup a complete, balanced dish without extra sides.
  • Flexible: Swap or add vegetables, change the meat, or tweak herbs and seasonings to suit your tastes.

Recipe Ingredients

For the Meatballs

  • Ground beef: 85% lean works well. You can substitute ground turkey or a beef-pork blend if preferred.
  • Parmesan: Freshly grated parmesan for the meatballs, and save the rind to simmer in the soup for extra flavor.
  • Breadcrumbs: Plain or Italian; if plain, add extra Italian seasoning to the mix.
  • Seasoning: Salt, cracked pepper, crushed red pepper flakes and Italian seasoning (or a blend of oregano, thyme, rosemary and basil).
  • Garlic: Freshly minced for best flavor.
  • Egg: One large egg to bind the meatballs; for an egg-free option, soak breadcrumbs in milk before adding to the meat.
  • Parsley: Fresh chopped parsley is ideal, but dried works if needed.
  • Optional: A splash of Worcestershire sauce brightens the meatball flavor.

For the Soup

  • Vegetables: Carrots, celery and yellow onion are the base. Substitute parsnip for carrots if desired.
  • Tomatoes: Use canned tomatoes — a combination of diced and crushed yields a pleasant texture (for example, two diced cans and one crushed).
  • Parmesan rind: Simmering a rind in the broth adds deep, savory richness — highly recommended.
  • Broth: Chicken or beef broth (low sodium preferred). Vegetable broth works too.
  • Seasoning: Italian seasoning pairs nicely with the parmesan; add crushed red pepper for heat if you like.
  • Garlic: Fresh minced garlic or garlic powder.
  • Ditalini pasta: Small pasta that cooks quickly; elbow macaroni or other short pasta may be used instead.
  • Spinach: Fresh baby spinach stirred in at the end; frozen is an acceptable substitute.
  • Tomato paste: A few tablespoons help thicken and deepen the broth.

Step-by-Step Instructions

Ground sirloin, breadcrumbs, egg, parsley and other meatball ingredients in glass mixing bowl.
Meatball mixture prepared in bowl with wooden spoon.
Meatballs rolled and arranged on parchment lined pan before being cooked.
Seared meatballs in pan.
  • Make the meatballs: Combine ground beef, parmesan, breadcrumbs, egg, parsley, garlic, salt, pepper and seasonings in a bowl. Mix gently until just combined. Form into small meatballs (about 3/4 inch). This yields roughly 50–60 meatballs depending on size.
  • Brown the meatballs (stovetop): Heat a skillet over medium-high with a drizzle of olive oil. Brown meatballs in batches for 3–4 minutes, turning to color all sides. They do not need to be fully cooked — they’ll finish in the soup. Remove and set aside.
  • Or broil the meatballs: Place meatballs on a parchment-lined sheet pan and broil on high 5–7 minutes until browned but not fully cooked. Remove and set aside.
  • Start the soup: In a large pot or Dutch oven, heat a drizzle of olive oil. Sauté chopped carrots, celery and diced onion for 3–4 minutes until onions are translucent.
  • Add broth, canned tomatoes, Italian seasoning, minced garlic, salt, pepper and the parmesan rind. Bring to a low boil, then reduce to a simmer and cook until carrots soften.
  • Stir in the browned meatballs, ditalini pasta and fresh spinach. Simmer about 10 minutes, until the pasta is al dente and meatballs are cooked through. Remove from heat, stir in tomato paste, and let rest a few minutes. Discard the parmesan rind before serving.

Recipe Tips

  • Do not overcook the pasta. Pasta will continue to soften after the pot is removed from heat; aim for just barely al dente.
  • Make it gluten-free: Substitute gluten-free breadcrumbs and pasta as needed.
  • Check meatball temperature: Ensure meatballs reach a safe internal temperature (165°F/74°C) before serving.
  • Air-fryer option: Air fry meatballs in batches at 350°F for 4–6 minutes until golden if you prefer that method.
Spoon scooping into bowl with meatball soup topped with grated parmesan and parsley.

Storage

Refrigerate leftovers in an airtight container for 3–4 days. To freeze, cool the soup completely, transfer to freezer-safe containers and freeze up to 3 months. Thaw overnight in the refrigerator before reheating.

What to Serve With This Soup

This soup pairs beautifully with a slice of crusty bread, dinner rolls or a grilled cheese. For a lighter meal, serve with a simple salad such as arugula with apples or a roasted pear salad. Appetizers like stuffed mushrooms or small pastry bites also complement the soup nicely.

Other Soups To Try

Overhead view of rotisserie chicken noodle soup in white bowl with spoon.

Soups & Chilis

Easy Rotisserie Chicken Noodle Soup

Italian sausage and gnocchi soup in bowl topped with herbs and parmesan.

Soups & Chilis

Sausage Gnocchi Soup

White bowl with tomato tortellini soup and spoon scooping in.

Soups & Chilis

Tomato Tortellini Soup

Bowl with orzo soup with chicken, carrots, celery and topped with lemon and parsley.

Soups & Chilis

Chicken Lemon Orzo Soup

HUNGRY FOR MORE? Subscribe to the newsletter and follow social accounts for more recipes and updates.

Vegetable Meatball Soup

By: Lorie Yarro
This cozy Vegetable Meatball Soup is full of mini meatballs, pasta and veggies — a filling, comforting meal the whole family will enjoy.
Large pot with vegetable meatball soup topped with chopped parsley and ladle placed in pot.
Prep Time: 15 minutes
Cook Time: 30 minutes
Total Time: 50 minutes
Servings: 6

Ingredients

For the Meatballs:

  • 1 lb ground beef (about 85% lean)
  • ⅓ cup parmesan cheese
  • ½ cup breadcrumbs
  • 2 tsp Italian seasoning
  • ¼ tsp crushed red pepper
  • 1 lightly beaten egg
  • 1 T fresh parsley, chopped
  • 2–3 garlic cloves, minced
  • ½ tsp sea salt
  • ½ tsp cracked pepper

For the Soup:

  • 4 carrots, chopped
  • 3–4 celery stalks, chopped
  • 1 yellow onion, diced
  • 3 cans tomatoes (approx. 15 oz each) — two diced, one crushed
  • 1 parmesan rind
  • 8 cups chicken or beef broth, low sodium
  • 2–3 garlic cloves, minced
  • 1 T Italian seasoning
  • ½ tsp sea salt
  • ½ tsp pepper
  • 1 cup ditalini pasta, uncooked
  • 2 cups fresh baby spinach
  • 3 T tomato paste

Instructions

  • Prepare the meatballs: Combine all meatball ingredients in a bowl and mix gently. Roll into small 3/4-inch meatballs (about 50–60).
  • Brown the meatballs: Heat olive oil in a large skillet over medium-high heat. Brown meatballs in batches 3–4 minutes until the outsides are colored. Set aside.
  • Or broil: Arrange meatballs on a parchment-lined sheet pan and broil 5–7 minutes until browned but not cooked through. Set aside.
  • Prepare the soup: In a large pot or Dutch oven, heat olive oil and sauté carrots, celery and onion 3–4 minutes until translucent.
  • Add broth, tomatoes, Italian seasoning, garlic, salt, pepper and the parmesan rind. Simmer until carrots soften and the broth reaches a low boil.
  • Add meatballs, spinach and ditalini. Simmer about 10 minutes until pasta is al dente and meatballs are fully cooked. Remove from heat, stir in tomato paste, let rest a few minutes and discard the parmesan rind before serving.

Notes

Do not overcook the pasta. It will keep softening after the soup is removed from heat — stop when it’s just barely al dente.

Gluten-free option: Use gluten-free breadcrumbs and pasta if needed.

Air fryer option: Air fry meatballs at 350°F for 4–6 minutes in batches until golden.

Nutrition

Calories: 399 kcal , Carbohydrates: 42 g , Protein: 31 g , Fat: 13 g

Nutrition information is an approximation.

Shop This Post

Dutch Oven Pot

Ladle

Garlic Press

Sheet Pan

Mixing Bowls