Classic Italian Wedding Soup is a comforting bowl filled with tender meatballs, tiny pasta, fresh spinach, and a flavorful broth. It’s a perfect mix of hearty and light, with just the right touch of herbs and parmesan cheese that give it such a homey feel.
I love making this soup when I want something cozy but not too heavy. There’s something so satisfying about the little meatballs floating alongside the green spinach and tiny pasta shapes—each spoonful feels like a warm hug. I always sneak a little extra parmesan on top because it makes everything taste even better.
This soup is great for sharing with family or friends, especially on a chilly day. I like to serve it with crusty bread to soak up the broth. It’s the kind of meal that brings everyone to the table and makes you feel glad to be together, simple and delicious without any fuss.
Key Ingredients & Substitutions
Ground Meat: This recipe uses both beef and pork for tender, flavorful meatballs. If you prefer, ground turkey or chicken works too but might be less juicy. Mixing in a bit of pork fat helps keep meatballs moist.
Breadcrumbs: Italian-style dried breadcrumbs add texture and hold the meatballs together. You can swap plain breadcrumbs and add a pinch of Italian seasoning if you like.
Parmesan Cheese: Parmesan adds saltiness and depth to the meatballs and as a garnish. If you need a dairy-free option, nutritional yeast is a good substitute for that cheesy flavor.
Acini di Pepe or Orzo Pasta: These tiny pasta shapes are perfect for this soup. If you can’t find them, tiny pastas like pastina or even finely chopped orzo will do.
Fresh Spinach: Fresh greens brighten the soup. Baby kale or Swiss chard are good alternatives. Add them near the end so they stay tender and vibrant.
How Do I Make Meatballs That Stay Tender and Don’t Fall Apart?
Making tender meatballs that hold together in soup is key. Here’s what helps:
- Use a mix of ground beef and pork for juiciness and flavor.
- Add breadcrumbs and an egg to bind everything without making the meatballs tough.
- Mix gently—overmixing can make meatballs dense.
- Shape uniform small meatballs (about 1 inch) so they cook evenly.
- Cook meatballs gently in simmering broth, not a rolling boil, to keep them intact.
Following these tips will give you tender, flavorful meatballs that float perfectly in your soup.

Equipment You’ll Need
- Large pot – big enough to hold the broth, meatballs, and pasta comfortably.
- Mixing bowl – for combining the meatball ingredients evenly without a mess.
- Spoon or small ice cream scoop – helps you shape uniform meatballs quickly.
- Wooden spoon – perfect for stirring the vegetables and broth without scratching your pot.
- Measuring cups and spoons – for accurate ingredient amounts, especially spices and pasta.
Flavor Variations & Add-Ins
- Swap ground beef and pork for ground turkey or chicken for a lighter meatball version.
- Add chopped kale or swiss chard instead of spinach for a heartier green boost.
- Mix in crushed red pepper flakes with the meatballs for a mild spicy kick.
- Use orzo pasta instead of acini di pepe if you want a slightly larger pasta texture.
Classic Italian Wedding Soup
Ingredients You’ll Need:
For the Meatballs:
- ½ cup Italian-style dried breadcrumbs
- ¼ cup grated Parmesan cheese, plus extra for garnish
- ¼ cup chopped fresh parsley, divided
- 1 large egg
- ½ teaspoon garlic powder
- ½ teaspoon onion powder
- ½ teaspoon salt
- ¼ teaspoon black pepper
- ½ pound ground beef
- ½ pound ground pork
For the Soup:
- 1 tablespoon olive oil
- 1 medium onion, finely diced
- 2 medium carrots, diced
- 2 celery stalks, diced
- 4 cloves garlic, minced
- 10 cups chicken broth
- ¾ cup acini di pepe or orzo pasta
- 5 cups fresh spinach, chopped
- Salt and pepper, to taste
Time Needed:
This recipe takes about 15 minutes to prepare and form the meatballs, 10 minutes to cook the meatballs in the broth, and another 10 minutes to cook the pasta and wilt the spinach. In total, you’ll spend roughly 35 minutes from start to finish.
Step-by-Step Instructions:
1. Make the Meatballs:
In a large bowl, gently mix together the breadcrumbs, Parmesan cheese, half of the chopped parsley, egg, garlic powder, onion powder, salt, pepper, ground beef, and ground pork. Once combined, shape the mixture into small meatballs about 1 inch in diameter. Set aside.
2. Cook the Vegetables and Broth:
Heat olive oil in a large pot over medium heat. Add the diced onion, carrots, and celery, sautéing until tender and softened, about 5-7 minutes. Stir in the minced garlic and cook for an additional minute until fragrant. Pour in the chicken broth and bring it to a boil.
3. Simmer the Meatballs:
Carefully add the prepared meatballs to the boiling broth. Lower the heat to a gentle simmer, cover the pot, and cook the meatballs for 10 minutes, letting them cook through without falling apart.
4. Add Pasta and Greens:
Remove the cover and add the acini di pepe or orzo pasta to the soup. Cook uncovered for 7-9 minutes until the pasta is tender. Then stir in the chopped spinach and the remaining parsley. Let the spinach wilt by cooking for another 2 minutes.
5. Final Touches and Serve:
Give the soup a taste and add salt and pepper if needed. Serve the soup hot, topped with extra freshly grated Parmesan cheese. For a full meal, pair with crusty bread on the side.
Can I Use Frozen Meatballs for This Soup?
Yes! You can prepare the meatballs ahead of time and freeze them. Just thaw completely in the refrigerator before adding to the broth to ensure even cooking and prevent the broth temperature from dropping too much.
What Can I Substitute for Acini di Pepe Pasta?
If you can’t find acini di pepe, orzo, pastina, or finely broken vermicelli are great alternatives. They have similar small sizes that cook quickly and blend well with the broth and meatballs.
How Should I Store Leftover Soup?
Store leftover soup in an airtight container in the fridge for up to 3 days. When reheating, warm gently on the stove to prevent overcooking the pasta and greens. You can also freeze the soup, but consider cooking fresh pasta when reheating.
Can I Make This Soup Vegetarian?
Absolutely! Replace the meatballs with vegetarian meatballs or sautéed mushrooms for a meaty texture. Use vegetable broth instead of chicken broth and keep the rest of the ingredients the same for a hearty vegetarian version.
