Print

Vegetable Meatball Soup Recipe

5 Stars 4 Stars 3 Stars 2 Stars 1 Star

4.2 from 2 reviews

This hearty Vegetable Meatball Soup combines tender beef meatballs with a savory tomato-based broth loaded with fresh vegetables and ditalini pasta. The meatballs are first browned on the stovetop and then broiled for added flavor before simmering in a rich broth with carrots, celery, onion, spinach, and Italian seasonings. Finished with parmesan cheese and tomato paste, this comforting soup is perfect for a satisfying family meal.

Ingredients

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 tbsp fresh parsley (chopped)
  • 2-3 garlic cloves (minced)
  • ½ tsp sea salt
  • ½ tsp cracked black pepper

Soup

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

Instructions

  1. Prepare the meatballs: In a medium bowl, combine ground beef, parmesan cheese, breadcrumbs, Italian seasoning, crushed red pepper, beaten egg, fresh parsley, minced garlic, sea salt, and cracked pepper. Mix thoroughly with clean hands until just combined. Roll the mixture into small balls about ¾ inch in diameter, yielding around 50-60 meatballs depending on size.
  2. Cook the meatballs stovetop: Heat a large skillet over medium-high heat and add a drizzle of olive oil. When hot and glistening, add the meatballs in batches. Brown the outsides by turning them once or twice for about 3-4 minutes. They do not need to be fully cooked at this stage. Remove browned meatballs and set aside.
  3. Broil the meatballs: Arrange the browned meatballs on a parchment paper-lined baking sheet. Broil on high for 5-7 minutes until the outsides are browned but the meatballs are still not fully cooked. Remove from oven and set aside.
  4. Sauté the vegetables: In a large stock pot or Dutch oven, heat a drizzle of olive oil over medium heat. Add chopped carrots, diced onion, and chopped celery. Sauté for 3-4 minutes until the onions become translucent and vegetables soften slightly.
  5. Add broth and aromatics: Pour in the chicken or beef broth and add all the tomatoes (both diced and crushed), Italian seasoning, minced garlic, sea salt, black pepper, and the parmesan rind. Stir and bring the mixture to a low boil over medium heat. Adjust heat as needed to maintain a simmer and cook until carrots are tender.
  6. Simmer with meatballs and pasta: Add the broiled meatballs, fresh baby spinach, and uncooked ditalini pasta to the pot. Simmer for about 10 minutes until the pasta is al dente and meatballs are fully cooked through.
  7. Finish the soup: Remove the pot from heat and stir in the tomato paste for richness and depth. Let the soup cool for several minutes before serving. Remove the parmesan rind prior to serving for best texture.

Notes

  • Meatballs can be made ahead and refrigerated before cooking.
  • Using low sodium broth allows you to control salt levels.
  • Ditalini pasta can be substituted with other small pasta shapes like orzo or small shells.
  • For a spicier kick, increase crushed red pepper to taste.
  • The parmesan rind adds delicious umami but can be omitted if unavailable.
  • Leftover soup stores well in the refrigerator for up to 3 days and freezes nicely.