Creamy Italian Meatball Soup (Printable View)

Tender meatballs in a rich, creamy tomato broth with vegetables and pasta for cozy dinners.

# What You’ll Need:

→ For the Meatballs

01 - 1.1 lbs ground beef or beef and pork blend
02 - 1/2 cup breadcrumbs
03 - 1/4 cup grated Parmesan cheese
04 - 1 large egg
05 - 2 cloves garlic, minced
06 - 2 tbsp chopped fresh parsley
07 - 1 tsp dried oregano
08 - 1/2 tsp salt
09 - 1/4 tsp ground black pepper

→ For the Soup

10 - 2 tbsp olive oil
11 - 1 medium onion, diced
12 - 2 carrots, diced
13 - 2 celery stalks, diced
14 - 3 cloves garlic, minced
15 - 1 tsp dried basil
16 - 1/2 tsp dried thyme
17 - 1/2 tsp crushed red pepper flakes
18 - 28 oz canned crushed tomatoes
19 - 5 cups chicken or vegetable broth
20 - 1 bay leaf
21 - 1 cup small pasta (ditalini or orzo)
22 - 3/4 cup heavy cream
23 - 3.5 oz baby spinach, roughly chopped
24 - Salt and black pepper to taste

→ For Serving

25 - Freshly grated Parmesan cheese
26 - Chopped fresh basil or parsley
27 - Crusty bread

# Cooking Steps:

01 - Combine ground meat, breadcrumbs, Parmesan, egg, garlic, parsley, oregano, salt, and pepper in a large bowl. Mix until just combined. Form into small meatballs about 1 inch in diameter and set aside.
02 - Heat 1 tbsp olive oil in a large soup pot over medium heat. Add meatballs in batches, turning to brown on all sides. They do not need to be cooked through. Transfer browned meatballs to a plate.
03 - Add remaining 1 tbsp olive oil to the same pot. Sauté onion, carrots, and celery for 5 minutes until softened. Add garlic, basil, thyme, and red pepper flakes; cook 1 minute more until fragrant.
04 - Add crushed tomatoes, broth, and bay leaf to the pot. Bring to a simmer. Return meatballs to the pot. Cover and simmer gently for 15 minutes to develop flavors.
05 - Stir in the pasta and continue simmering, uncovered, for 10 minutes or until pasta is al dente and meatballs are cooked through.
06 - Reduce heat to low. Remove and discard the bay leaf. Stir in heavy cream and baby spinach; cook for 2 to 3 minutes until spinach is wilted and soup is creamy. Season with salt and pepper as needed.
07 - Ladle soup into bowls. Top with grated Parmesan and fresh herbs. Serve with crusty bread if desired.

# Expert Tips:

01 -
  • The way the cream transforms into the most velvety rich broth without overwhelming the fresh vegetables
  • Meatballs that stay impossibly tender because they simmer gently rather than boil aggressively
  • That magical moment when the pasta absorbs just enough broth to become perfect little flavor pockets
02 -
  • The meatballs will continue cooking as they simmer so do not overwork the mixture or they will become tough and dense
  • Add the cream at the very end because dairy can separate if boiled too vigorously or for too long
  • The pasta will absorb liquid as the soup sits so you may need to add more broth when reheating leftovers
03 -
  • Use a cookie scoop to make perfectly uniform meatballs that cook at the same rate
  • Let the meatball mixture rest in the refrigerator for 30 minutes before forming to prevent sticking
  • Grate your own Parmesan instead of buying pre grated for dramatically better flavor melting