Quick Recipe Version (TL;DR)
Quick Ingredients
- 1 lb (450 g) ground turkey
- 1/3 cup plain breadcrumbs
- 1/4 cup finely grated Parmesan, plus more for serving
- 1 large egg
- 5 cloves garlic, minced (divided)
- 3 tbsp chopped fresh parsley (divided)
- 1 tsp dried Italian seasoning
- 1 small onion, diced
- 2 medium carrots, sliced
- 2 celery stalks, sliced
- 8 cups low-sodium chicken broth
- 2/3 cup dry orzo pasta
- 4 cups lightly packed baby spinach
- 2 tbsp olive oil
- 1 tbsp lemon juice
- Salt, black pepper, optional red pepper flakes
Do This
- 1. In a bowl, mix turkey, breadcrumbs, Parmesan, egg, 2 cloves garlic, 2 tbsp parsley, 1/2 tsp Italian seasoning, 3/4 tsp salt, and 1/4 tsp pepper. Form 1-inch mini meatballs (about 30–35).
- 2. Heat 1 tbsp olive oil in a large pot over medium-high. Brown meatballs in batches 4–5 minutes, turning to color most sides. Transfer to a plate (they will finish cooking in the soup).
- 3. In the same pot, add remaining 1 tbsp olive oil, onion, carrots, and celery. Cook 5–6 minutes until softened. Stir in remaining garlic, 1/2 tsp Italian seasoning, and a pinch of red pepper flakes; cook 30 seconds.
- 4. Pour in chicken broth, scrape up browned bits, and bring to a boil. Add orzo and meatballs. Reduce to a lively simmer and cook 10–12 minutes, stirring occasionally, until orzo is al dente and meatballs are cooked through.
- 5. Stir in spinach and cook 1–2 minutes until wilted. Add lemon juice, remaining 1 tbsp parsley, and adjust salt and pepper to taste.
- 6. Ladle into warm bowls and top with extra Parmesan and a drizzle of olive oil if desired.
Why You’ll Love This Recipe
- All the cozy flavors of Italian wedding soup, but lightened up with lean turkey and loads of vegetables.
- Mini meatballs and tiny orzo pasta make it fun and kid-friendly while still feeling elegant enough for guests.
- One-pot meal that comes together in about an hour, with simple grocery-store ingredients.
- Perfect for meal prep: reheats beautifully and tastes even better the next day.
Grocery List
- Produce: 1 small yellow onion, 2 medium carrots, 2 celery stalks, 5 cloves garlic, 1 lemon, 1 small bunch flat-leaf parsley, 4 cups baby spinach
- Dairy: Parmesan cheese (for meatballs and serving)
- Pantry: 1 lb ground turkey, plain breadcrumbs, low-sodium chicken broth, dry orzo pasta, olive oil, dried Italian seasoning, bay leaf (optional), red pepper flakes (optional), kosher or fine sea salt, black pepper
Full Ingredients
For the Mini Turkey Meatballs
- 1 lb (450 g) ground turkey, preferably 93% lean
- 1/3 cup plain dry breadcrumbs
- 1/4 cup finely grated Parmesan cheese
- 1 large egg
- 2 cloves garlic, finely minced or pressed
- 2 tbsp fresh flat-leaf parsley, finely chopped
- 1/2 tsp dried Italian seasoning
- 3/4 tsp kosher salt (or 1/2 tsp fine sea salt)
- 1/4 tsp freshly ground black pepper
For the Soup
- 2 tbsp olive oil, divided
- 1 small yellow onion, finely diced (about 1 cup)
- 2 medium carrots, peeled and sliced into 1/4-inch rounds
- 2 celery stalks, sliced into 1/4-inch pieces
- 3 cloves garlic, minced
- 8 cups (2 quarts) low-sodium chicken broth
- 1 small bay leaf (optional but nice for fragrance)
- 1/2 tsp dried Italian seasoning
- 1/4 tsp red pepper flakes (optional, for gentle heat)
- 2/3 cup dry orzo pasta (about 4 oz)
- 4 cups lightly packed baby spinach (about 4 oz), roughly chopped if leaves are large
- 1 tbsp fresh lemon juice (from about 1/2 lemon), plus more to taste
- 1 tbsp fresh flat-leaf parsley, chopped (for finishing)
- Salt and freshly ground black pepper, to taste
For Serving (Optional)
- Extra finely grated Parmesan cheese
- Additional chopped fresh parsley
- Extra-virgin olive oil for drizzling
- Crusty bread, for dunking

Step-by-Step Instructions
Step 1: Prep Your Ingredients
Start by setting up your workspace. Finely dice the onion, slice the carrots and celery into even 1/4-inch pieces, and mince all 5 cloves of garlic (keeping 2 cloves for the meatballs and 3 cloves for the soup). Chop the fresh parsley, keeping about 3 tbsp total; you will use 2 tbsp for the meatballs and 1 tbsp to finish the soup. Roughly chop the baby spinach if the leaves are large. Measure out the orzo, broth, and seasonings.
Preheating and prepping now will make the cooking process smoother. Place a large heavy-bottomed pot or Dutch oven (at least 5 quarts) on the stove, ready for browning the meatballs and cooking the soup.
Step 2: Make the Turkey Meatball Mixture
In a large mixing bowl, combine the ground turkey, breadcrumbs, finely grated Parmesan, egg, 2 cloves minced garlic, 2 tbsp chopped parsley, 1/2 tsp dried Italian seasoning, 3/4 tsp kosher salt, and 1/4 tsp black pepper. Use a fork or clean hands to gently mix just until everything is evenly distributed.
Avoid overworking the mixture, which can make the meatballs dense. The mixture should be soft and slightly sticky but still hold together when pressed. If it feels too wet, sprinkle in an extra tablespoon of breadcrumbs; if too dry, add 1 tsp of water or a splash of broth.
Step 3: Shape and Brown the Mini Meatballs
With lightly oiled hands, roll the mixture into small meatballs about 1 inch in diameter (roughly 1 tablespoon each). You should get around 30–35 mini meatballs. Place them on a plate or tray as you go.
Heat 1 tbsp olive oil in your large pot over medium-high heat. When the oil is shimmering, add about half the meatballs in a single layer, leaving a little space between them. Brown for 4–5 minutes total, turning occasionally, until they are nicely golden on several sides. They do not need to be cooked through yet. Transfer the browned meatballs to a clean plate and repeat with the remaining meatballs, adding a touch more oil if the pot seems dry.
Once all meatballs are browned, pour off only excess fat if there is more than about 1 tablespoon left, but keep the browned bits on the bottom of the pot—those will flavor the broth.
Step 4: Sauté the Vegetables and Build the Flavor Base
Reduce the heat to medium and add the remaining 1 tbsp olive oil to the same pot, if needed. Add the diced onion, sliced carrots, and celery. Cook, stirring occasionally, for 5–6 minutes, until the vegetables soften slightly and the onion turns translucent.
Stir in the remaining 3 cloves minced garlic, 1/2 tsp dried Italian seasoning, and red pepper flakes if using. Cook for about 30 seconds to 1 minute, just until fragrant—do not let the garlic brown.
Pour in about 1 cup of the chicken broth and use a wooden spoon to scrape up any browned bits from the bottom of the pot. Then add the remaining broth and the bay leaf. Increase the heat to high and bring the mixture to a boil.
Step 5: Simmer with Orzo and Meatballs
Once the broth is boiling, add the orzo and gently return all the browned meatballs (and any juices on the plate) to the pot. Stir to distribute everything evenly and ensure no orzo is stuck to the bottom.
Reduce the heat to maintain a lively simmer (medium to medium-low, depending on your stove). Cook uncovered for 10–12 minutes, stirring occasionally, until the orzo is just al dente and the meatballs are cooked through. To check doneness, cut one meatball in half; the center should no longer be pink, and an instant-read thermometer should register at least 165°F (74°C).
Step 6: Finish with Spinach, Lemon, and Herbs
Turn the heat down to low. Stir in the baby spinach and simmer for 1–2 minutes, just until the leaves are wilted and bright green. Remove and discard the bay leaf.
Stir in 1 tbsp fresh lemon juice and the remaining 1 tbsp chopped parsley. Taste the broth and adjust seasoning with additional salt and black pepper as needed. If you prefer a brighter flavor, add another teaspoon or two of lemon juice.
To serve, ladle the soup into warm bowls, making sure each portion has a generous share of mini meatballs, vegetables, and orzo. Top with a shower of finely grated Parmesan and, if you like, a small drizzle of good extra-virgin olive oil. Serve immediately with crusty bread on the side.
Pro Tips
- Keep meatballs tender: Mix the turkey gently and stop as soon as everything is combined. Overmixing compresses the meat and makes meatballs tough.
- Evenly sized meatballs: Use a 1-tbsp cookie scoop or a measuring spoon for uniform size so they cook at the same rate.
- Prevent sticky hands: Lightly oil or dampen your hands before rolling the meatballs; this helps them shape more easily.
- Watch the orzo: Orzo continues to absorb broth as it sits. If the soup thickens too much, simply add a splash of hot broth or water when reheating and adjust seasoning.
- Boost flavor with rind: For extra richness, simmer a small piece of Parmesan rind in the broth with the bay leaf and remove it before serving.
Variations
- Gluten-free: Use gluten-free breadcrumbs in the meatballs and swap the orzo for a small gluten-free pasta shape or 1/2 cup cooked rice added at the end.
- Extra veggies: Add 1 cup chopped zucchini or finely chopped kale along with the carrots and celery, or stir in a handful of peas during the last 3 minutes of cooking.
- Richer, more traditional flavor: Replace half of the ground turkey with ground chicken or pork, and add 2 tbsp finely grated Pecorino Romano cheese to the meatball mixture.
Storage & Make-Ahead
Let the soup cool to room temperature, then refrigerate in airtight containers for up to 4 days. The orzo will continue to absorb liquid and the soup may thicken; when reheating on the stovetop over medium heat or in the microwave, stir in extra chicken broth or water as needed to loosen it, then adjust salt and pepper.
For longer storage, you can freeze the soup for up to 3 months. For the best texture, consider cooking and freezing the meatballs and broth with vegetables without orzo and spinach; then, when ready to serve, reheat the soup, add fresh orzo, and simmer until tender before finishing with fresh spinach and lemon. Thaw frozen soup overnight in the refrigerator before reheating gently on the stovetop.
Nutrition (per serving)
Approximate values per serving (1/6 of the recipe): about 340 calories; 24 g protein; 28 g carbohydrates; 13 g fat; 3 g fiber; 900 mg sodium. Actual values will vary based on specific brands of broth, Parmesan, and exact portion sizes.
