Italian Wedding Soup

Italian Wedding Soup

Italian wedding soup lands in the bowl looking light, but it eats like a full meal. The broth stays clean and savory, the tiny meatballs turn tender instead of dense,…

By Riley • • Reading time: 8 min
Tip: save now, cook later.
⬇ Jump to Recipe

Italian wedding soup lands in the bowl looking light, but it eats like a full meal. The broth stays clean and savory, the tiny meatballs turn tender instead of dense, and the pasta gives each spoonful enough body to feel comforting without making the soup heavy. When it’s done right, you get that perfect mix of soft greens, rich broth, and little bites of Parmesan in every sip.

What makes this version work is the way the meatballs are handled and the order everything goes into the pot. Mixing the beef and pork just until combined keeps the meatballs delicate, and simmering them in the broth instead of browning them separately lets the soup keep its gentle, homemade character. The vegetables get a quick sauté first so the broth starts with a sweet, savory base instead of tasting flat.

Below you’ll find the small details that matter most: how to keep the meatballs from tightening up, when to add the pasta so it doesn’t go mushy, and how to adapt the soup if you need a lighter version or want to make it ahead.

“

The meatballs stayed tender and the broth had great flavor without getting cloudy. I used baby spinach at the end and the pasta was still perfect the next day after a quick reheat.

★★★★★— Maria T.

Save this Italian Wedding Soup for a cozy dinner with tender meatballs, pasta, and greens in one bowl.

Save to Pinterest

Italian Wedding Soup

The Secret to Tender Meatballs in a Clear Broth

The biggest mistake people make with Italian wedding soup is treating the meatballs like they’re getting the same job as meatballs for spaghetti. They’re smaller, softer, and meant to stay delicate in the broth. If you pack them tightly or overmix the meat, they turn rubbery and the soup loses the texture that makes it so good.

The other thing that keeps this soup tasting clean is restraint. You want a gentle simmer, not a hard boil, once the meatballs go in. A rolling boil can break them apart and cloud the broth. Keep the heat low enough that the surface barely moves. That gives the meatballs time to cook through while staying tender and keeping the broth clear.

  • Ground beef and pork — The mix gives you better flavor than beef alone. Pork brings softness and a little richness, while beef adds backbone. If you only have one or the other, the soup still works, but the texture and flavor are less balanced.
  • Italian breadcrumbs — These help the meatballs hold together without becoming dense. Fine dry crumbs work if that’s what you have, but the Italian-style version adds a little built-in seasoning that supports the meatball mixture.
  • Parmesan — Use the real grated cheese if you can. It melts into the meatballs and gives them savory depth. The pre-shredded kind won’t blend as smoothly, so the texture can turn a little gritty.
  • Escarole or baby spinach — Escarole has a mild bitterness that works beautifully in this soup, while spinach gives you a softer, milder finish. Baby spinach is the easiest swap if escarole isn’t available, and it only needs a minute or two to wilt.

Building the Soup in the Right Order

Starting with the Aromatics

Cook the onion, carrots, and celery in olive oil until they soften and the onion turns translucent around the edges. You’re not looking for browning here. You want sweetness and a soft base that will melt into the broth. If the vegetables stay crunchy at this stage, they’ll stand out in a way that feels unfinished.

Dropping in the Meatballs

Once the broth is at a simmer, lower the meatballs in gently. Don’t dump them in all at once from high above the pot or they can break apart before they set. A spoon or your fingertips works best. They’re done when they feel firm to the touch and float toward the surface after a few minutes.

Cooking the Pasta at the End

Add the acini di pepe or orzo after the meatballs are cooked through. Pasta absorbs broth as it cooks, and if you add it too early, it will steal too much liquid and go bloated. Pull the soup from the heat as soon as the pasta is tender, because it will keep softening in the hot broth.

Finishing with the Greens

Stir in the escarole or spinach last so it keeps its color and doesn’t turn stringy. Spinach wilts almost immediately, while escarole needs a couple of extra minutes to soften. Taste the broth after the greens go in, then adjust the salt and pepper. This is also the moment to add a last shower of Parmesan.

How to Adapt This Soup for Different Kitchens and Routines

Make it gluten-free

Swap the Italian breadcrumbs for gluten-free breadcrumbs and use gluten-free pasta or rice-shaped pasta. The meatballs still hold together well as long as you don’t overwork the mixture. If you use a pasta that drinks up broth quickly, plan on adding a little extra stock before serving.

Use all spinach instead of escarole

Baby spinach gives the soup a softer, milder finish and cooks in almost no time. It won’t bring the slight bitterness escarole does, so the broth tastes a little gentler and more kid-friendly. Add it at the very end so it stays bright green instead of collapsing into the soup.

Make it lighter

Use all ground turkey or a mix of turkey and pork if you want a lighter bowl. Turkey alone can taste lean, so keep the Parmesan in the meatballs and don’t skip the sautéed vegetables. The soup will be a little less rich, but still satisfying.

Storage and Reheating

  • Refrigerator: Store leftovers for up to 4 days. The pasta will continue to absorb broth, so expect a thicker soup on day two.
  • Freezer: This soup freezes well, but the pasta softens after thawing. For the best texture, freeze the broth and meatballs without the pasta, then cook fresh pasta when you reheat it.
  • Reheating: Warm it gently on the stovetop over medium-low heat until steaming, adding extra broth if needed. A hard boil will overcook the pasta and can toughen the meatballs.

Answers to the Questions Worth Asking

Can I make Italian wedding soup ahead of time?+

Yes, but it’s best to keep the pasta separate if you know you’ll be reheating it later. The broth, meatballs, and vegetables can be made a day or two ahead, then you can cook fresh pasta into the soup when serving. That keeps the texture much better.

How do I keep the meatballs from falling apart in the soup?+

Use just enough mixing to combine everything, then roll the meatballs gently. If the mixture feels too loose, chill it for 10 to 15 minutes before shaping. They’ll hold together better once they hit the hot broth.

Can I use spinach instead of escarole?+

Yes. Spinach is the easiest swap and it gives the soup a milder taste. Add it at the very end because it wilts fast, and stop cooking as soon as the leaves are soft and bright green.

How do I stop the pasta from getting mushy?+

Cook the pasta just until al dente and remove the pot from the heat right away. The noodles keep softening in the hot broth, especially if the soup sits before serving. If you’re planning leftovers, undercook the pasta slightly or keep it separate.

Can I freeze Italian wedding soup with the pasta in it?+

You can, but the pasta will soften a lot after thawing. For the best result, freeze the soup without the pasta and add fresh cooked pasta when you reheat it. That keeps the broth clear and the texture much better.

Italian Wedding Soup

Italian wedding soup with tender mini meatballs, tiny pasta, and leafy greens simmered in a light savory chicken broth. Cook the meatballs gently, then simmer acini di pepe (or orzo) until tender for a comforting, weeknight-ready bowl.
Prep Time 25 minutes
Cook Time 30 minutes
Total Time 55 minutes
Servings: 8 servings
Course: Dinner
Cuisine: Italian
Calories: 420

Ingredients
  

Meatballs
  • 0.5 lb ground beef
  • 0.5 lb ground pork
  • 0.33 cup Italian breadcrumbs
  • 0.33 cup grated Parmesan cheese
  • 1 large egg
  • 2 tbsp milk
  • 2 clove garlic cloves minced
  • 2 tbsp chopped fresh parsley
  • 0.5 tsp salt
  • 0.25 tsp black pepper
Soup
  • 2 tbsp olive oil
  • 1 onion diced
  • 2 carrots diced
  • 2 celery ribs diced
  • 2 clove garlic cloves minced for soup
  • 8 cup chicken broth
  • 0.75 cup acini di pepe or orzo pasta
  • 4 cup chopped escarole or baby spinach

Equipment

  • 1 Dutch oven

Method
 

Make the meatballs
  1. In a large bowl, mix ground beef, ground pork, Italian breadcrumbs, grated Parmesan cheese, egg, milk, garlic, parsley, salt, and black pepper until just combined.
  2. Roll the mixture into 3/4-inch meatballs and set them on a plate.
Build the soup base
  1. Heat olive oil in a large pot over medium heat, then add onion, carrots, and celery and cook for 6 minutes until softened.
  2. Stir in the garlic and cook for 30 seconds until fragrant.
Simmer
  1. Add chicken broth and bring to a boil.
  2. Gently drop in the meatballs and simmer for 8 to 10 minutes, until cooked through.
  3. Stir in the pasta and cook for 8 to 9 minutes, until tender.
  4. Add escarole or spinach and cook for 2 to 3 minutes, until wilted.
Finish and serve
  1. Taste and adjust the seasoning, then serve with extra Parmesan.

Notes

For tender meatballs, mix just until the ingredients come together—overmixing can make them tough. Cool leftovers quickly and refrigerate up to 4 days; freeze up to 3 months (freeze without extra Parmesan if possible). For a lighter option, swap half the meatballs for lean ground turkey and use part-skim milk.
Riley profile photo

About Riley

Writes practical, weeknight-friendly recipes.

More from Riley

Join our weekly recipe email

Fresh dinners, soups, and bakes—straight to your inbox. Free & easy.

Unsubscribe anytime. We respect your inbox.

Leave a Comment

Recipe Rating