Italian Wedding Soup

Italian Wedding Soup
⏱️ cook time 45 minutes
🍽️ servings 4
⚡ Difficulty easy

intro

Hearty, comforting soup with tender mini meatballs, bright leafy greens, and tiny pasta in savory chicken broth, a beloved Italian-American family favorite.

Ingredients

80% lean ground beef 225g (8 oz)
Ground pork 115g (4 oz)
Fresh breadcrumbs 60g (½ cup)
Grated Parmesan cheese 40g (¼ cup, plus extra for serving)
Large egg 1 unit (50g)
Garlic powder 1 teaspoon
Dried oregano ½ teaspoon
Kosher salt 1 teaspoon, divided
Ground black pepper ½ teaspoon, divided
Extra-virgin olive oil 2 tablespoons (30ml)
Yellow onion 1 medium (150g, diced)
Carrot 2 medium (120g, diced)
Celery 2 stalks (100g, diced)
Fresh garlic 3 cloves (15g, minced)
Low-sodium chicken broth 1.9L (8 cups)
Uncooked orzo pasta 100g (½ cup)
Escarole 1 small head (250g, chopped, tough stems removed)

Steps

1

Form mini meatballs

In a large mixing bowl, combine 225g ground beef, 115g ground pork, 60g breadcrumbs, 40g Parmesan, 1 large egg, ½ teaspoon garlic powder, ½ teaspoon dried oregano, ½ teaspoon kosher salt, and ¼ teaspoon black pepper. Mix gently with your hands until just combined (do not overmix, which creates tough meatballs). Roll the mixture into 2cm (¾ inch) mini meatballs, roughly 10g each, and set on a plate to make approximately 40 total meatballs.

Step 1
step1:Form mini meatballs
2

Sauté soup aromatics

Heat 2 tablespoons (30ml) of extra-virgin olive oil in a large 5L (5 quart) Dutch oven or soup pot over medium heat (175°C / 350°F stovetop). Add 150g diced yellow onion, 120g diced carrot, and 100g diced celery, cooking for 6 minutes and stirring occasionally until vegetables soften and turn translucent. Add 15g minced garlic and cook for 30 seconds more until fragrant, taking care not to burn the garlic.

Step 2
step2:Sauté soup aromatics
3

Bring broth to simmer

Pour 1.9L (8 cups) of low-sodium chicken broth into the pot with the sautéed aromatics. Turn heat to medium-high to bring the broth to a low rolling simmer (small steady bubbles breaking at the surface, not a hard boil), then reduce heat to medium-low to maintain the gentle simmer. Add the remaining ½ teaspoon kosher salt and ¼ teaspoon black pepper, stirring to combine.

Step 3
step3:Bring broth to simmer
4

Poach the meatballs

Gently drop all prepared mini meatballs into the simmering broth one by one to avoid splashing hot liquid. Do not stir for the first 3 minutes to let the meatballs set and prevent breaking. After 3 minutes, stir gently, and let the meatballs cook for 7 more minutes at a steady medium-low simmer, until fully cooked through (internal temperature 74°C / 165°F).

Step 4
step4:Poach the meatballs
5

Add pasta and greens

Stir 100g (½ cup) uncooked orzo pasta into the simmering soup, cooking for 8 minutes and stirring occasionally to prevent pasta from sticking to the pot bottom. Once the orzo is al dente (tender with a slight firm bite at the center), add 250g chopped escarole, stirring for 1-2 minutes until the greens are fully wilted and bright green.

Step 5
step5:Add pasta and greens
6

Finish and serve soup

Taste the soup and adjust salt or pepper if needed to suit your preference. Turn off the heat, ladle the soup into pre-warmed bowls, and top each serving with an extra sprinkle of grated Parmesan cheese. Serve immediately while hot.

Step 6
step6:Finish and serve soup

Tips

1.Avoid overmixing the meatball mixture, as this compacts the meat and develops tough gluten from breadcrumbs, leading to dense, chewy meatballs instead of light, tender ones.
2.If escarole is unavailable, substitute with curly kale or Swiss chard (add with the pasta for extra cooking time) or fresh spinach (add for only 30 seconds, as it wilts extremely quickly).
3.Keep the soup at a gentle steady simmer rather than a rolling boil, as turbulent boiling water will break apart tender meatballs and turn the orzo mushy.

✨ You May Also Like

Soups & Stews
🍜 Japan

Rich, umami-dense Hokkaido-style miso ramen with chewy noodles, savory fermented broth, and classic toppings, a cozy, deeply satisfying warm meal.

⏱️ 45 minuteSoups & Stews ★ 4.8
Soups & Stews
🍜 United States

A hearty, peppery tripe and root vegetable stew with colonial Philadelphia roots, thick, warming, and packed with bold savory flavor for cold winter days.

⏱️ 2 hours 3Soups & Stews ★ 4.6
Soups & Stews
🍜 Mexico

Hearty, warming red pork posole loaded with tender hominy, slow-simmered in a rich smoky chile broth, served with zesty fresh garnishes for a deeply comforting, satisfying meal.

⏱️ 2 hours 3Soups & Stews ★ 4.8
Soups & Stews
🍜 United States

Warm, soothing classic chicken noodle soup loaded with tender chicken, soft egg noodles, and savory veggies, perfect for chasing chills and feeding the whole family.

⏱️ 40 minuteSoups & Stews ★ 4.7
Soups & Stews
🍜 France

Deeply savory caramelized onion broth topped with crusty bread and bubbly melted Gruyère, a timeless French bistro comfort food ideal for cold days.

⏱️ 1 hour 25Soups & Stews ★ 4.6
Soups & Stews
🍜 United States

Hearty, briny Maryland crab soup loaded with sweet blue crab, tender summer vegetables, and zesty Old Bay, a beloved Chesapeake Bay coastal comfort staple.

⏱️ 55 minuteSoups & Stews ★ 4.8

Italian Wedding Soup:Frequently Asked Questions

1.Why is it called Italian Wedding Soup if it’s not traditionally served at weddings?
Great question! The name comes from a loose translation of the Italian phrase minestra maritata, or 'married soup,' which refers to the perfect, harmonious pairing of savory meat and leafy greens in broth. It’s a beloved Italian-American family staple, not a dish reserved for actual wedding receptions, despite the festive-sounding name.
2.Can I use only ground beef for the meatballs instead of a beef and pork mix?
You absolutely can, but the classic blend of 80% lean ground beef and ground pork delivers the tender, rich, non-dry texture that makes these meatballs iconic. If you skip the pork, mix 1 tablespoon of olive oil into your all-beef blend to make up for the missing fat, otherwise your meatballs may turn out tough or bland.
3.Do I have to pan-fry the mini meatballs, or can I bake them instead?
Both methods work wonderfully! For a low-mess, hands-off option, bake 1-inch meatballs on a parchment-lined sheet pan at 400°F for 12 minutes before adding them to your soup. Pan-frying in a thin layer of olive oil creates a deeper, crispier browned crust, but baking cuts down on active time and excess grease without sacrificing flavor.
4.Why does the recipe call for fresh breadcrumbs instead of dry for the meatballs?
Fresh breadcrumbs create far softer, more tender meatballs than dry crumbs, which tend to soak up too much moisture and leave meatballs dense and crumbly. If you only have dry breadcrumbs on hand, soak them in 2 tablespoons of whole milk for 5 minutes before mixing them into the meat blend to mimic that soft, fresh texture.
5.Can I prep the mini meatballs ahead of time?
Absolutely! You can mix and roll the mini meatballs up to 2 days ahead, stored covered on a tray in the refrigerator, or freeze them in a single layer for up to 3 months. There’s no need to thaw frozen meatballs before adding them to simmering soup—just tack on 2 extra minutes of cook time to make sure they heat all the way through.
6.What type of tiny pasta works best for this soup?
Traditional, authentic picks include acini di pepe, orzo, or tiny stelline star-shaped pasta. Skip larger pasta shapes, as they’ll soak up too much broth and throw off the soup’s balanced ratio of ingredients. If you plan to have leftovers, cook pasta separately instead of in the broth to keep it from turning mushy in storage.
7.How do I keep my leftover soup from getting mushy?
The most common culprit of mushy leftover soup is pasta left sitting in hot broth, which keeps absorbing liquid long after it finishes cooking. Cook your pasta separately, store it in its own airtight container in the fridge, and add a scoop to each bowl when you reheat, then top with hot broth, meatballs, and greens for perfect texture every time.
8.What kind of leafy greens are traditional for this recipe?
The classic, most authentic pick is curly endive or escarole, which have a mild, slightly peppery bite that holds up well to simmering broth without turning slimy. If you can’t find those, swap in chopped kale or Swiss chard; if using delicate baby spinach, add it in the last 2 minutes of cooking so it doesn’t overcook.
9.Is it okay to use store-bought chicken broth instead of homemade?
Of course! For the best results, pick a low-sodium store-bought broth so you can fully control the final salt level of your soup. If you have 10 extra minutes, bump up the depth by simmering the broth with a halved onion, two crushed garlic cloves, and a bay leaf, then strain, for a flavor almost as rich as homemade.
10.What purpose does the egg serve in the meatball mix?
The large egg in the meatball blend acts as a gentle binder that holds the ground meat, breadcrumbs, and Parmesan together so your mini meatballs don’t fall apart while simmering in broth. Stick to one large egg per pound of total meat—adding too much egg will make your meatballs rubbery and tough, so don’t overdo it.
11.Do I need to add a Parmesan rind to the broth?
It’s not strictly required, but tossing a saved leftover Parmesan rind into the broth as it simmers adds a rich, nutty, umami depth you can’t get from grated cheese alone. If you don’t have a rind on hand, stir in an extra 2 tablespoons of grated Parmesan per serving right before serving to amp up that signature cheesy note.
12.How small should I roll the meatballs for this soup?
Aim for 1-inch diameter meatballs, roughly the size of a large marble or small grape. That size cooks quickly, stays tender, and fits perfectly on a soup spoon so you get a little bit of meatball, pasta, and green in every bite. Larger meatballs take longer to cook through and throw off the soup’s delicate, balanced texture.
13.Do traditional versions of this soup have beaten egg swirled into the broth?
Some Italian-American family variations do swirl a thin stream of beaten egg mixed with grated Parm into the simmering broth right before serving for extra richness, similar to stracciatella soup, but this is not required for the classic version. If you love that silky texture, stir slowly as you pour to create thin, delicate egg strands.
14.Why do my meatballs fall apart when I simmer them in the soup?
This usually happens for one of three common reasons: you skimped on the egg and breadcrumb binder, you overmixed the meatball mixture which makes meat tough and crumbly, or you dropped them into broth that wasn’t at a steady gentle simmer. Don’t stir the soup for the first 3 minutes after adding meatballs to let them set fully.
15.How long will leftover Italian Wedding Soup stay good in the fridge?
Stored properly in sealed, airtight containers with pasta kept separate from the broth, meatball, and greens mixture, the soup will stay fresh for 3 to 4 days in the refrigerator. Reheat individual servings on the stovetop over medium-low heat until gently simmering, then add your pre-cooked pasta and a sprinkle of Parm to serve.
16.Can I freeze this soup for quick future meals?
Yes, with one key caveat: leave out the pasta and fresh greens if you plan to freeze it. The broth and cooked meatballs freeze beautifully for up to 3 months. Thaw containers in the fridge overnight, reheat to a gentle simmer, then add fresh greens and cooked pasta right before serving so those components don’t turn mushy or discolored.
17.Can I make a vegetarian version of this soup?
You can easily adapt it for vegetarian diets! Swap the beef and pork meatballs for mini lentil or plant-based ground meatballs, use low-sodium vegetable broth instead of chicken, and keep the pasta, greens, and Parmesan (swap in nutritional yeast for a fully vegan take). It won’t be the classic version, but it will still be cozy, savory, and flavorful.
18.What’s the best way to serve Classic Italian Wedding Soup?
Serve it piping hot right after it finishes simmering, topped with a fresh sprinkle of grated Parmesan, a crack of freshly ground black pepper, and a side of crusty garlic bread to sop up any leftover broth. It works beautifully as a light first course for a larger Italian meal, or as a hearty, filling main dish for quick weeknight family dinners.

Comments (4)

3 days ago

OMG this soup was SO good! I made it for Sunday family dinner last night and even my super picky 7 year old asked for seconds! The meatballs came out so tender, I didn’t even have to spend forever rolling them which was a total win for a weeknight-adjacent meal. 10/10 will be adding this to my regular meal prep rotation!

2 days ago

Wait did you use ground turkey or beef for the meatballs? I’m trying to swap some red meat out for my husband’s cholesterol and wondering if turkey holds up here!

yesterday

Hi both! So happy the recipe was a hit with your family, Sarah! To answer your question Jake, ground turkey (I recommend 93/7 lean) works perfectly for the meatballs—no texture issues at all, just don’t overmix the meat when you’re forming the balls and they’ll stay tender!

1 week ago

Game changer! I brought this to my office potluck last week and people were begging me for the recipe before we even got to dessert. I added a little extra parmesan on top because I’m a cheese fiend, and it slapped. Only note: I wish I’d made a double batch, it was gone in 10 minutes flat!

5 days ago

Love the extra parmesan hack! I’m a huge cheese fan too, so I fully support piling it on. So stoked it was a potluck hit—double batch is definitely the move for crowds, I do the same when I make it for friend gatherings!

5 minutes ago

Wow, this was way easier than I thought it would be! I’ve always been intimidated by Italian wedding soup because I thought it took hours to make, but 45 minutes total? No way. The flavors taste just like the version my grandma used to make when I was a kid, it made me so nostalgic. Perfect cozy soup for the random cold snap we got here in Atlanta this week!

2 days ago

Really solid soup recipe! My kids loved it, which is always a win. The only thing I messed up the first time was adding the pasta too early, so it got super mushy by the time we ate. Definitely follow the note about adding the pasta the last 10 minutes, folks—learn from my mistake!

yesterday

Oh my gosh I did the exact same thing my first batch! Second time I cooked the pasta separate and added it right to the bowl when serving, zero mush, worked like a charm!