My family’s Italian Wedding Soup recipe, with tender beef and pork meatballs, escarole, and acini di pepe pasta, simmered in Parmigiano-Reggiano infused chicken broth. This hearty one-pot meal is one of our favorite ways to warm up on a cold night.

Italian Wedding Soup in a white handled bowl on an ivory ceramic plate with two spoons and slices of Italian bread
Want to save this recipe?
Send the link to your Inbox, plus receive our new and trusted recipes weekly!

What Is Italian Wedding Soup?

Wedding Soup as we know it in the United States is a variation of Minestra Maritata, a tradition of Neapolitan/Southern Italian cuisine meaning “married soup”. The phrase refers to the union of the soup’s characteristic components: broth, leafy greens (often, those that are bitter), and meat.

About Minestra Maritata

With origins as a peasant dish, Minestra Maritata was often made to utilize leftover meat scraps (fresh or cured, as well as bones), combined with local greens that were economical to source. It has also traditionally been served as the primo (first course) of the Easter and/or Christmas feasts in the Neapolitan region. (Not, as the American translation of “Wedding Soup” would suggest, at weddings.)

You’ll find many recipes for Minestra Maritata in Italy, varying by family and ingredient availability. In Italian Regional Cooking {affiliate link–it’s a great reference cookbook}, Ada Boni features “Minestra di Erbe Maritata” made with aromatics, cabbage, endive, escarole, and a variety of slowly-simmered pork products including sausage, bacon, ham bone, and pork skin (page 215).

In my never-ending quest for recipes, I’ve also come across several variations of the dish that include pulses, such as cannellini beans, or grains.

Italian Wedding Soup vs Minestra Maritata

Italian-American Wedding Soup pays homage to the tradition of Minestra Maritata, with a few key differences. In short, Wedding Soup swaps small meatballs for the various cuts of meat, simmered in clear chicken broth with greens (such as escarole or spinach).

The soup also typically includes tiny pasta (such as acini di pepe), though some recipes omit it. Some families finish the dish with “stracciatella,” made from eggs beaten with grated cheese that are drizzled into the hot broth. (My family prefers to serve Stracciatella as its own soup recipe, without the meatballs and pasta.)

While Italian Wedding Soup is hearty and filling, the use of ground meat makes it a bit lighter than Minestra Maritata. It’s also a simpler preparation that takes a lot less time to cook. Italian Wedding Soup is a one-pot recipe, whereas the meats and vegetables in Minestra Maritata are cooked separately before combining.

overhead photo of the ingredients needed to make meatballs for Italian Wedding Soup on a wood background

Ingredients In My Family’s Italian Wedding Soup

To make the meatballs you’ll need:

  • Ground Beef and Ground Pork. A classic combination for juicy meatballs with great flavor. I like to use ground beef that’s 85% lean meat/15% fat (often labeled “ground round” at our market’s butcher counter). I find 80%/20% a bit too fatty, and 90%/10% too dry.
  • White Bread. These meatballs utilize a technique called a panade (a soaked bread paste) for a tender texture. We’ve always used Maier’s Italian Style Bread for this recipe, but other brands of white bread can be substituted.
  • Milk. For the panade. I recommend using whole or 2%.
  • Grated Yellow Onion. Use the large shredding holes on a sharp box grater (and watch your knuckles!). The grated pulp will be moist, but if your onion throws a significant amount of juice, strain and discard it so the meatball mixture isn’t too wet to hold its shape.
  • Egg. Lightly-beaten, to bind the meat mixture.
  • Grated Pecorino Romano cheese. Adds a salty, earthy, nutty flavor to the meatballs. I like to use the Locatelli brand.
  • Flat-Leaf Parsley, Salt, and Pepper. To season the meatballs.
  • Olive oil. Use regular olive oil (not extra virgin) to brown the meatballs in your soup pot.
overhead photo of diced carrots, celery, and onions in white bowls, a parmesan cheese rind, a liquid measuring cup filled with chicken broth, and a head of escarole

To make the soup, you’ll need:

  • Carrots, Celery, and Onions. Borrowing from the classic concept of a soffritto, small-diced carrots, celery, and onions form the base layer of the soup’s flavor. We use close to a 1-1-1 ratio in this recipe, cooking the vegetables in a combination of olive oil and the pan drippings from browning the meatballs.
  • Chicken Broth or Stock. If you have homemade on hand, this soup is a great recipe to make with it! If using canned or boxed broth, look for low or reduced sodium varieties so that you can salt the soup to taste.
  • Acini di Pepe Pasta. Meaning “seeds of pepper” (peppercorns), acini di pepe are tiny pasta pearls that are classic to Italian Wedding Soup.
  • Parmigiano Reggiano Rind. Adding the rind from a wedge of parmesan is a simple trick for infusing flavor into soups, stews, and sauces. Whenever I buy parmesan for grating, I cut off the rind and freeze it for later use. Alternately, many grocery stores package and sell the rinds at their gourmet cheese counters.
  • Escarole. A lightly bitter leafy green from the chicory family. Roughly chop the escarole leaves and clean them well to remove any grit. We like to soak our escarole in a colander set in a bowl of cold water, rinsing thoroughly.

Heading to the market? Check out What is Escarole, Anyway? from Bon Appétit.

closeup view of small beef and pork meatballs on a parchment lined baking sheet

Making the Meatballs

The biggest time commitment in this recipe is shaping and browning the meatballs. If you have a helper in the kitchen, two sets of hands definitely speeds up the process!

Many Italian Wedding Soup recipes call for dropping the meatballs raw into simmering broth. Others call for par-baking the meatballs in the oven to render out any fat before adding them to the soup.

My family loves the extra flavor that browned meatballs add to the dish, but we prefer to brown them in the soup pot. Sweating the vegetables in the meatball drippings builds a fantastic base layer of flavor.

four overhead photos showing the process of making beef and pork meatballs for Italian Wedding Soup in a glass bowl

Process and My Meatball-Making Tips

  1. Use a fork to mash the panade into a paste, giving the bread a few minutes to soak up the milk. You don’t want to see chunks of dry bread in the meatballs.
  2. For tender meatballs, don’t over-mix the ground meat mixture. Thoroughly stir the cheese, grated onion, egg, and seasonings into the panade before adding the meat, mixing with a fork or your hands just to combine.
  3. Cook a spoonful of the meatball mixture in a skillet on the stove before shaping the meatballs to taste for seasoning. If needed, add a little extra cheese, salt, or pepper. The meatballs should be well-seasoned for a flavorful soup.
overhead photo of an open hand holding a small beef and pork meatball over a bowl of the unrolled meatball mixture
  1. Shape the meat mixture into small meatballs, about 1/2- to 3/4-inch in diameter. You’ll get about 58-60 meatballs in the full recipe.
  2. Lightly dampen your hands with cold water before rolling the meatballs to keep the mixture from sticking. I shape them by eye, but if you’d like, you can also use a small cookie scoop {affiliate link} to ensure that they’re evenly sized across the batch. One half of a tablespoon of the ground meat mixture (about half of the cookie scoop linked) will yield the approximate size meatball you’ll need.
  3. Brown the meatballs in batches in your soup pot, being sure not to crowd them so they don’t steam. Using my 6-3/4 Quart Le Creuset Round Wide Dutch Oven {affiliate link}, I’m able to brown all of the meatballs in 2 batches. Don’t worry about cooking the meatballs through at this point; they’ll finish cooking in the broth.
removing a seared beef and pork meatball from a pot with a pair of red tongs

Simmering the Soup

Once the meatballs are browned and removed from the pan, sweat the onions, carrots, and celery. Be sure to remove all but 2 tablespoons of fat from the pan before adding the vegetables so the broth isn’t greasy.

Once the vegetables begin to soften, add the chicken broth or stock and scrape the brown bits from the bottom of the pot with a wooden spoon. They’re flavor gold!

Add the browned meatballs and Parmigiano Reggiano rind to the broth or stock and bring it to a boil before adding the pasta. The broth will infuse with the flavors of the meatballs and cheese rind as it heats, which the pasta will soak up.

pouring chicken stock from a glass liquid measuring cup into a red enameled cast iron dutch oven with sauteed carrots, celery, and onions

Cooking times may vary by the brand of acini di pepe pasta you’re using (or, if you’re substituting another pasta shape). We like our pasta a little softer than al dente in soup.

About 5 minutes before the pasta is finished cooking, remove the cheese rind and add the escarole, simmering until the greens are wilted and tender. Skim the top of the soup with a spoon to remove any excess fat that’s collected (the amount you have to skim will depend on the fat content of the meatballs).

acini di pepe pasta being poured into a pot of Italian Wedding Soup from a white ceramic bowl

Serving and Storing Italian Wedding Soup

We like to serve the soup with a few grinds of pepper and grated Parmigiano-Reggiano on top. In my house, warm, crusty Italian bread is a must for dipping into the flavorful broth.

Store the soup in an airtight container in the refrigerator for up to 3 days. Keep in mind that the pasta will continue to soften and soak up some of the broth as it sits. If reheating the soup after a day or two, you might need to add additional broth to the pot.

Tip: If you don’t love the texture of next-day, very soft pasta, you can cook the pasta separately, store it without liquid, and add it to the reheated soup when serving. Omit the pasta in the initial preparation of the soup, and instead cook it in a second pot of broth until al dente (or your desired doneness). Drain the pasta, lightly toss it with a teaspoon or two of olive oil, and store it in an airtight container in the refrigerator.

chopped escarole being stirred into a pot of Italian Wedding Soup with a wooden spoon

Recipe FAQ’s

Q. Can I substitute poultry for the beef and pork mixture?

A. Yes, you can also make the meatballs for Italian Wedding Soup with ground chicken or turkey.

For the best flavor and texture, I recommend using a mixture that isn’t entirely ground breast meat. Using all extra-lean poultry can result in dry meatballs that aren’t as tender.

You’ll typically find ground turkey in 85% lean meat/15% fat and 93%/7% varieties. Either use all 85%/15%, or a mixture of the two.

If using chicken, opt for packages labeled “lean” or simply, “ground chicken.” These typically contain 96% lean meat/4% fat, and consist of breast and thigh meat. “Extra lean” ground chicken usually comes in around 98% meat/2% fat and is labeled as “ground chicken breast.”

ladleful of Italian Wedding Soup in an enameled cast iron pot

Q. I can’t find acini di pepe. Can I use another small pasta shape?

A. Feel free to substitute other small pasta varieties, like ditalini or orzo, adjusting the cooking time, if needed.

Q. I don’t like or can’t source escarole. Can I substitute spinach or another leafy green?

A. Yes. Clean and coarsely chop or tear the spinach, as you would the escarole. I find that spinach takes a little less time to wilt down into the soup than escarole.

Some families also enjoy adding curly endive to their Italian Wedding Soup. Its flavor is stronger and more bitter than escarole. While it isn’t my preference, you may enjoy the substitution if you love bitter greens. Because of its tougher texture, curly endive will take longer than escarole to cook in the soup, about 10 minutes.

overhead photo of two bowls of Italian Wedding Soup on a wood background with a sliced loaf of Italian bread in the upper right corner

More Reader-Favorite Soup Recipes

CRAVING MORE? Subscribe to my newsletter and join me on Facebook, Pinterest, and Instagram for the latest recipes and news.

Italian Wedding Soup

My family's hearty Italian Wedding Soup is filled with flavorful beef and pork meatballs, tiny pasta pearls, aromatic vegetables, and greens. This is a cozy, one pot recipe that feels like a warm hug on a cold night.
Prep Time: 50 minutes
Cook Time: 1 hour
Total Time: 1 hour 50 minutes
Servings: 8 servings

Ingredients

Meatballs

  • 1 to 1-1/2 slices white bread , crusts removed and discarded and bread torn into small pieces (about 3/4 cup bread pieces)*
  • 2 tablespoons milk (whole or 2%)
  • 1 small yellow onion , grated on a box grater (about 1/3 cup)**
  • 1 large egg , lightly beaten
  • 1/2 cup grated Pecorino Romano cheese
  • 1/3 cup chopped fresh Italian (flat-leaf) parsley
  • 1 teaspoon kosher salt
  • pinch freshly-ground black pepper
  • 1/2 pound ground beef (85%/15%)
  • 1/2 pound ground pork

Soup

  • 2 tablespoons olive oil (not extra virgin)
  • 1 cup diced yellow onion (1/4 inch dice)
  • 1 cup diced carrot (1/4 inch dice)
  • 3/4 cup diced celery (1/4 inch dice)
  • 12 cups chicken broth or stock ***
  • 1 medium rind from a block of Parmigiano Reggiano
  • 3/4 cup dried acini di pepe pasta
  • 1 head escarole (about a pound), washed well and roughly chopped
  • kosher salt and freshly-ground black pepper
Save this recipe!
Send the link to your inbox, plus get new recipes from us weekly!

Instructions 

Make the Meatballs

  • In a large bowl, make a panade by combining the bread pieces and milk, letting it stand for 5 minutes to absorb. Mash the mixture with a fork until it forms a fairly smooth paste. 
  • Stir in grated onion, egg, Pecorino Romano, parsley, salt, and a pinch of black pepper until well combined. 
  • Add beef and pork and mix until just combined (for tender meatballs, don’t over-mix). Cook a teaspoonful of the mixture in a skillet on the stove to test for seasonings and, if needed, add additional salt, cheese, and/or pepper to taste. (The meatballs should be well-seasoned for the best flavored soup.)
  • Portion the meatball mixture into 1-1/2 teaspoon portions (about 3/4 inch diameter). To more cleanly shape the meatballs, dampen your hands with a bit of water before rolling. Set the meatballs aside.

Make the Soup

  • Heat olive oil in a large, heavy bottomed pot or Dutch oven over medium high heat until shimmering.
  • Add half of the meatballs and lightly brown, 2-3 minutes per side. Remove from the pan to a plate and repeat with the remaining meatballs. (Note that the meatballs will not be cooked through and will finish cooking in the soup.)
  • Drain off all but 2 tablespoons of fat from the pan. Add carrot, onion, and celery with a pinch each of kosher salt and black pepper. Cook, stirring frequently, until vegetables are beginning to soften, 5-8 minutes. 
  • Pour chicken broth or stock into the pot, scraping up any brown bits on the bottom of the pan. Add meatballs back into the pot with any accumulated juices, and the Parmigiano Reggiano rind.
  • Bring the soup to a boil and stir in the acini di pepe. Reduce heat, partially cover the pot, and simmer for 10-15 minutes, until the pasta is tender.
  • Remove the cheese rind from the pot and discard. Add the escarole and simmer, uncovered, until wilted and tender, about 5 minutes. Skim excess fat from the top of the soup with a spoon (the amount released will depend on the meat you used). 
  • If needed, season the soup with salt and pepper to taste. Top with additional grated parmesan, if desired, and serve hot with slices of crusty Italian bread for dipping.

Notes

*We usually use Maier’s Italian-Style white bread from the grocery store in our meatballs, which is soft and not too dense. Any similarly soft white bread will work to make the panade.
**The grated onion will be juicy, but if it throws a copious amount of liquid (which can happen if the box grater is dull), drain some of it off so the meatball mixture isn’t too moist to hold its shape when rolled.
***I typically use homemade chicken broth, or a high-quality regular variety from the grocery store. If you prefer to limit the salt content in the soup, choose low sodium broth or stock and season the soup to taste.

Nutrition Estimate

Serving: 0.125recipe | Calories: 183kcal | Carbohydrates: 23g | Protein: 8g | Fat: 7g | Saturated Fat: 2g | Polyunsaturated Fat: 1g | Monounsaturated Fat: 4g | Trans Fat: 1g | Cholesterol: 30mg | Sodium: 1723mg | Potassium: 615mg | Fiber: 4g | Sugar: 3g | Vitamin A: 4218IU | Vitamin C: 35mg | Calcium: 156mg | Iron: 2mg

Nutrition information is automatically calculated, so should only be used as an approximation.

About our recipes

Please note that our recipes have been developed using the US Customary measurement system and have not been tested for high altitude/elevation cooking and baking.

Like this? Rate and comment below!

Share this recipe:

cropped-bolognese-sauce-instant-pot-1.jpg
5 Restaurant-Quality Dinners in Under an Hour
Join our newsletter list and start your subscription with our Quick Start Series! You'll be introduced to 5 of our most popular, easy-to-prep, gourmet recipes to make weeknight dinners and entertaining a breeze.

You may also like:

Leave a comment

Your email address will not be published. Required fields are marked *

Recipe Rating