Creamy Tuscan Turkey Meatball Soup (Printable)

Tender turkey meatballs swim in a rich, creamy garlic Parmesan broth with spinach and sun-dried tomatoes.

# What you need:

→ Turkey Meatballs

01 - 1 lb ground turkey
02 - 1/3 cup breadcrumbs
03 - 1/4 cup grated Parmesan cheese
04 - 1 large egg
05 - 2 cloves garlic, minced
06 - 2 tablespoons fresh parsley, chopped
07 - 1/2 teaspoon dried oregano
08 - 1/2 teaspoon salt
09 - 1/4 teaspoon black pepper

→ Soup Base

10 - 2 tablespoons olive oil
11 - 1 medium yellow onion, finely chopped
12 - 3 cloves garlic, minced
13 - 5 cups low-sodium chicken broth
14 - 1 cup heavy cream
15 - 1/2 cup grated Parmesan cheese
16 - 1/2 cup sun-dried tomatoes packed in oil, drained and chopped
17 - 3 cups fresh baby spinach
18 - 1 teaspoon dried Italian herbs
19 - Salt and pepper to taste
20 - Fresh basil for garnish, optional

# Directions:

01 - In a large bowl, combine ground turkey, breadcrumbs, Parmesan cheese, egg, minced garlic, fresh parsley, dried oregano, salt, and black pepper. Mix until just combined without overworking. Shape mixture into approximately 20 balls, each about 1 inch in diameter.
02 - Heat 1 tablespoon olive oil in a large pot over medium heat. Add meatballs in batches and brown on all sides for 4-5 minutes total, working in stages to avoid crowding. Meatballs need not be fully cooked at this stage. Transfer to a plate and set aside.
03 - Add remaining 1 tablespoon olive oil to the same pot. Add finely chopped onion and sauté until softened, approximately 4 minutes. Stir in minced garlic and cook for 1 additional minute until fragrant.
04 - Pour chicken broth into the pot while scraping up the browned bits from the bottom with a wooden spoon. Bring to a gentle simmer over medium heat.
05 - Return browned meatballs to the pot. Add sun-dried tomatoes and dried Italian herbs. Simmer uncovered for 12-15 minutes until meatballs are cooked through completely.
06 - Reduce heat to low. Stir in heavy cream and Parmesan cheese until fully incorporated. Simmer gently for 2-3 minutes until the soup reaches a creamy consistency, stirring occasionally.
07 - Stir fresh baby spinach into the soup and cook until completely wilted, approximately 1-2 minutes. Taste and adjust seasoning with salt and pepper as needed.
08 - Ladle soup into bowls. Garnish with fresh basil and additional grated Parmesan cheese if desired. Serve immediately.

# Expert tips:

01 -
  • These meatballs stay incredibly moist because of the breadcrumbs and egg binding, plus they soak up all that garlicky cream like tiny flavor sponges.
  • The soup comes together in under an hour, making it perfect for nights when you need something that tastes like you spent all day cooking but didn't.
  • Sun-dried tomatoes add a subtle sweetness and depth that regular tomatoes can't quite match, turning an ordinary broth into something restaurant-worthy.
02 -
  • Don't skip browning the meatballs even though they'll cook more in the broth, because that golden crust develops flavor compounds that make the entire soup taste deeper and more complex.
  • Heavy cream can break or curdle if it gets too hot, so always lower your heat before adding it and let it just warm through gently rather than bubble aggressively.
  • Taste the broth before adding salt because the Parmesan and sun-dried tomatoes already bring plenty of salty, umami flavors that build as things simmer.
03 -
  • Wet your hands before shaping meatballs and they'll come together smoothly without sticking, and your hands will stay much cleaner throughout the process.
  • Let your broth simmer uncovered so excess moisture evaporates and the flavors concentrate and deepen, creating a more flavorful final bowl.
  • Stir the soup occasionally as it finishes cooking so the cream distributes evenly and you don't end up with pockets of plain broth next to overly rich areas.
Go back