Big Bowls. Bold Flavors. Zero Apologies.
There’s something magical about soup. One spoonful and you’re instantly wrapped in comfort—like your favorite blanket, but with better seasoning. Italian Wedding Soup is the kind of recipe that feels like a warm embrace in a bowl. Tender meatballs, delicate pasta, and leafy greens simmer together in a rich, savory broth that’s both comforting and timeless. Despite its name, this classic soup isn’t about weddings at all — it’s about balance, where simple ingredients come together in perfect harmony.
This version leans into tradition while keeping things approachable for the home cook. It’s hearty without being heavy, cozy without being fussy, and exactly the kind of soup you make when you want something nourishing, soulful, and deeply satisfying. Whether you’re serving it on a chilly evening or ladling it up for family and friends, Italian Wedding Soup is proof that the most memorable meals are often the simplest ones.

Ingredients
For the Meatballs
- 1 lb ground chicken or turkey (or pork/beef mix for richer flavor)
- ½ cup Italian-style breadcrumbs
- ¼ cup grated Parmesan cheese
- 1 egg
- 2 cloves garlic, minced
- 1 tsp Italian seasoning
- ½ tsp salt
- ¼ tsp black pepper
For the Soup
- 2 tbsp olive oil or butter
- 1 small onion, diced
- 2 carrots, peeled and diced
- 2 celery ribs, diced
- 3 cloves garlic, minced
- 6 cups chicken broth
- 1 cup small pasta (acini di pepe, orzo, or ditalini)
- 5 oz baby spinach (or chopped kale)
- 1 cup heavy cream (or half-and-half for lighter)
- ½ cup grated Parmesan cheese (plus extra for serving)
- Salt and pepper, to taste
Instructions
In a bowl, mix ground meat, breadcrumbs, Parmesan, egg, garlic, Italian seasoning, salt, and pepper until just combined. Roll into small, bite-sized meatballs (about 1 inch).
In a large pot or Dutch oven, heat 1 tbsp olive oil over medium heat. Add meatballs in batches, browning on all sides (they don’t need to cook through yet). Remove and set aside.
In the same pot, add remaining olive oil. Sauté onion, carrots, and celery for 4–5 minutes until softened. Stir in garlic and cook 30 seconds until fragrant.
Pour in chicken broth. Bring to a boil, then reduce to a simmer. Add meatballs back into the pot and cook for 10 minutes.
Stir in pasta and cook until al dente (check package time). Stir occasionally to prevent sticking.
Stir in spinach and cook until wilted (2–3 minutes). Lower heat and add cream and Parmesan, stirring until smooth. Taste and adjust with salt and pepper.
Ladle into bowls, top with extra Parmesan, and enjoy warm with crusty bread.
