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.
This post contains affiliate links. As an Amazon Associate, I earn a commission (at no additional cost to you) from qualifying purchases made by clicking these links. As always, all recommendations and opinions expressed are my own.
What You'll Find in This Post
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 (a wonderful 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.
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.
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. (Such as Whole Foods; available on Amazon.)
- 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.
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.
Process and My Meatball-Making Tips
- 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.
- 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.
- 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.
- Shape the meat mixture into small meatballs, about ½- to ¾-inch in diameter. You’ll get about 58-60 meatballs in the full recipe.
- 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 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.
- Brown the meatballs in batches in your soup pot, being sure not to crowd them so they don’t steam. Using my 6-¾ Quart Le Creuset Round Wide Dutch Oven (my go-to Italian Wedding Soup pot), 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.
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.
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).
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.
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.”
Q. I can’t find acini di pepe. Can I use another small pasta shape?
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.
More Reader-Favorite Soup Recipes
- Rotisserie Chicken Gnocchi Soup
- Split Pea Soup with Ham (the most popular recipe on Striped Spatula)
- Cream of Mushroom Soup
- Wonton Soup
- French Lentil Soup
- Mexican Street Corn Inspired Soup
- Creamy Roasted Tomato Soup
Italian Wedding Soup
- 1 to 1-½ slices white bread , crusts removed and discarded and bread torn into small pieces (about ¾ cup bread pieces)*
- 2 tablespoons milk (whole or 2%)
- 1 small yellow onion , grated on a box grater (about ⅓ cup)**
- 1 large egg , lightly beaten
- ½ cup grated Pecorino Romano cheese
- ⅓ cup chopped fresh Italian (flat-leaf) parsley
- 1 teaspoon kosher salt
- pinch freshly-ground black pepper
- ½ pound ground beef (85%/15%)
- ½ pound ground pork
- 2 tablespoons olive oil (not extra virgin)
- 1 cup diced yellow onion (¼ inch dice)
- 1 cup diced carrot (¼ inch dice)
- ¾ cup diced celery (¼ inch dice)
- 12 cups chicken broth or stock ***
- 1 medium rind from a block of Parmigiano Reggiano
- ¾ cup dried acini di pepe pasta
- 1 head escarole (about a pound), washed well and roughly chopped
- kosher salt and freshly-ground black pepper
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-½ teaspoon portions (about ¾ 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.