This classic soup is packed with rich flavors, tender pasta, vibrant vegetables, and fun, bite-sized meatballs. It’s a simple soup but the flavors are complex and delicious. Despite its name, the soup isn’t connected to weddings but rather refers to the perfect blend of ingredients that create a well-balanced, comforting meal. It’s one of my all-time favorite soups, and I bet you’ll love it, too!

There are so many different versions of this soup, and some will say it’s not authentic unless it has certain ingredients. Like escarole. For this version, baby spinach is used for convenience, though escarole adds a deeper flavor. If you prefer, baby kale works well too. The mini meatballs can be made ahead of time and stored in the freezer, making meal prep even easier. Each one is made from about a teaspoon of the meat mixture—just the right size for a spoonful of soup.
Don’t skip the meatballs! They add so much umami to the soup. Sometimes, I cheat and use bits of sausage, but these mini meatballs are so worth the effort!
Ingredients
For the meatballs:
- Ground pork – Use lean ground pork. You don’t want greasy soup.
- Sliced bread – Crusts removed if it’s crusty bread.
- Milk – Any kind of milk or cream will work.
- Garlic cloves – Please use fresh garlic, it has so much more flavor!
- Freshly grated Parmesan
- Egg – Lightly beaten.
- Salt – I cook with kosher salt.
- Freshly ground black pepper
- Garlic powder
- Dried basil
- Onion powder
For the soup:
- Good olive oil
- Yellow onion – You can use any kind of onion, just chop it up small.
- Carrots – Don’t use baby carrots – they cook too quickly.
- Celery – Use the leaves and all – they add so much flavor!
- Fennel bulb – Fennel adds an amazing flavor. Don’t be afraid of this weird looking veggie! Peel off the outer layer, cut off the stems, and slice it thinly.
- Homemade chicken stock – Or use low or no-sodium-added chicken broth.
- Dry white wine – You can skip this if you want, but add a tablespoon of lemon juice to balance the flavors.
- Acini Di Pepe pasta – See my suggested pasta shapes below.
- Baby spinach – Washed.
- Parsley
How To Make Italian Wedding Soup
- Preheat the oven to 350°F (175°C) and line a baking sheet with parchment paper.
- Prepare the bread mixture by soaking it in milk for a few minutes, then mashing it into a smooth paste.
- Combine ground pork, garlic, parsley, Parmesan, egg, salt, pepper, garlic powder, basil, onion powder, and the bread paste. Stir until fully incorporated.
- Form the meatballs by rolling teaspoon-sized portions into small balls. Arrange them on the baking sheet and bake for 20 minutes, or until browned and cooked through. Set aside.
- Sauté the vegetables in a large pot with olive oil over medium heat. Cook the onions, carrots, celery, and fennel for 5–7 minutes, stirring occasionally, until softened.
- Deglaze the pot by adding white wine. Let it simmer for 2–3 minutes to reduce slightly.
- Add the chicken stock and bring the soup to a boil. Reduce to a simmer, cover, and cook for about 10 minutes.
- Cook the pasta separately in about 2 cups of chicken broth for approximately 6 minutes, until al dente. Drain and set aside, but return the cooking liquid to the soup.
- Incorporate the meatballs into the soup. Cover and let it simmer for another 10 minutes.
- Add the spinach and cook for 1–2 minutes until just wilted.
- Adjust seasoning as needed with additional salt and pepper. Serve hot, garnished with extra Parmesan.
Step-By-Step Process
Best Pasta Choices for Italian Wedding Soup
Small pasta varieties like acini di pepe, orzo, and tubettini work best as they blend well with the broth, meatballs, and vegetables. Larger pasta shapes such as penne or farfalle can be overwhelming in texture and size. For a fun variation, try stelline, tiny star-shaped pasta that adds a unique touch to the dish.
Chef Jenn’s Tips
- Choose high-quality chicken stock for the richest flavor.
- Avoid over-mixing the meatball mixture to keep them tender.
- If you don’t have white wine, simply omit it.
- Cooking the pasta separately prevents it from absorbing too much broth when storing leftovers. Add pasta to individual bowls before serving or reheating.
- For a gluten-free option, substitute gluten-free pasta and bread.
recommended
Make It A Meal
Enjoy this soup as a complete meal or pair it with a fresh salad and crusty bread. For dessert, opt for something light like biscotti or fresh fruit. If serving a larger group, add antipasti for an authentic Italian spread.
Storage
Refrigerate leftovers in an airtight container for up to three days. Freeze in portions for up to two months. I love freezing soups in my Souper Cubes. To reheat, thaw overnight in the fridge and warm on the stove, adding extra broth or water if needed.
Italian Wedding Soup
Ingredients
For the meatballs
- 1 pound ground pork
- 2 slices white bread crusts removed if it’s crusty bread
- ¼ cup milk
- 2 cloves garlic minced
- ¼ cup Parmesan freshly grated
- 1 egg lightly beaten
- 1 teaspoon salt I cook with kosher salt
- freshly ground black pepper
- 1 teaspoon garlic powder
- 1 teaspoon dried basil
- 1 teaspoon onion powder
For the soup
- 2 tablespoons olive oil
- 1 cup yellow onion chopped
- 2 carrots cut into ¼-inch dice
- 2 stalks celery cut into ¼-inch dice
- 1 cup fennel bulb sliced
- 10 cups chicken stock homemade, or use low or no-sodium added chicken broth
- ½ cup dry white wine
- 1 cup acini di pepe pasta or any other very small pasta shape
- 4 ounces baby spinach washed
- parsley
Instructions
- Preheat the oven to 350°F (175°C) and line a baking sheet with parchment paper.
- Prepare the bread mixture by soaking it in milk for a few minutes, then mashing it into a smooth paste.
- Combine ground pork, garlic, parsley, Parmesan, egg, salt, pepper, garlic powder, basil, onion powder, and the bread paste. Stir until fully incorporated.
- Form the meatballs by rolling teaspoon-sized portions into small balls. Arrange them on the baking sheet and bake for 20 minutes, or until browned and cooked through. Set aside.
- Sauté the vegetables in a large pot with olive oil over medium heat. Cook the onions, carrots, celery, and fennel for 5–7 minutes, stirring occasionally, until softened.
- Deglaze the pot by adding white wine. Let it simmer for 2–3 minutes to reduce slightly.
- Add the chicken stock and bring the soup to a boil. Reduce to a simmer, cover, and cook for about 10 minutes.
- Cook the pasta separately in about 2 cups of chicken broth for approximately 6 minutes, until al dente. Drain and set aside, but return the cooking liquid to the soup.
- Incorporate the meatballs into the soup. Cover and let it simmer for another 10 minutes.
- Add the spinach and cook for 1–2 minutes until just wilted.
- Adjust seasoning as needed with additional salt and pepper. Serve hot, garnished with extra Parmesan.
Notes
Chef Jenn’s Tips
- Choose high-quality chicken stock for the richest flavor.
- Avoid over-mixing the meatball mixture to keep them tender.
- If you don’t have white wine, simply omit it.
- Cooking the pasta separately prevents it from absorbing too much broth when storing leftovers. Add pasta to individual bowls before serving or reheating.
- For a gluten-free option, substitute gluten-free pasta and bread.
Nutrition
A Note on Nutritional Information
Nutritional information for this recipe is provided as a courtesy and is calculated based on available online ingredient information. It is only an approximate value. The accuracy of the nutritional information for any recipe on this site cannot be guaranteed.