Italian Wedding Soup

This post may contain affiliate links. Read my full disclosure policy.

Simple ingredients, big comfort—this Italian wedding soup recipe is one you’ll want on repeat all season long.

Large pot of Italian wedding soup.

Photo by Johnny Miller (Clarkson Potter, 2021)

My kids love anything with meatballs, so this Italian wedding soup recipe is always a hit at our house. Made with a rich broth, greens, tiny pasta and mini meatballs, it’s a meal unto itself. The name comes from the Italian phrase minestra maritata, or “married soup,” a nod to the way the flavors combine, like a happy marriage.

The traditional recipe can be a bit of a project, but I save time by using store-bought broth fortified with wine and plenty of veggies. For the meatballs, my secret is adding ground Italian sausage to the beef mixture—it packs tons of flavor without the need for extra seasoning.

Rolling the mini meatballs is the most time-consuming part, but I usually recruit the kids to help. To save even more time down the road, you can double the meatball recipe and freeze half—you’ll be glad you did! Serve with warm garlic bread and a Caesar salad.

“Wonderful recipe! Tastes as great as it looks.”

Karen

What You’ll Need To Make Italian Wedding Soup

Soup ingredients including chicken broth, beef broth, and egg.
  • Lean ground beef and Italian sausage: Form the base of the meatballs, adding tenderness, spice, and rich flavor.
  • Egg and Italian seasoned bread crumbs: Bind the meatballs and give them a light, tender texture.
  • Fresh chives, sage, and garlic: Lend subtle onion, earthy, and savory notes to the meatballs.
  • Parmigiano Reggiano: Adds sharp, nutty flavor to both the meatballs and the finished soup.
  • Olive oil: Used to sauté the vegetables and adds richness.
  • Yellow onion, carrots, and celery: The classic aromatic trio for a flavorful soup base.
  • Chicken and beef broths: Create a rich, hearty base (use regular, not low-sodium, for best flavor).
  • Dry white wine: Adds a touch of acidity that brightens the broth.
  • Bay leaf: Infuses the soup with a subtle, earthy aroma.
  • Small pasta (like ditalini, orzo, or pearl couscous): Gives the soup heartiness and texture.
  • Fresh spinach: Stirred in at the end for color and freshness; chard or escarole also work well.
  • Jump to the printable recipe for precise measurements

Step-by-Step Instructions

Step 1: Start the meatballs. In a large bowl, whisk together the egg, chives, sage, and garlic with a fork — this helps evenly distribute the flavor before you add the meat and breadcrumbs.

Fork in a bowl of egg mixture.

Step 2: Mix in remaining meatball ingredients. Add the ground beef, sausage, Parmesan, breadcrumbs, and salt. Use your hands to gently mash and mix until everything’s evenly combined — don’t overwork it or the meatballs will be dense.

Bowl of unmixed meatball mixture.

Step 3: Roll and bake. Shape the mixture into tablespoon-size balls and arrange them on a greased, oven-safe rack set over a baking sheet. Bake for 15 to 18 minutes, until lightly browned and cooked through. Set aside while you start the soup.

Cooked meatballs on a wire rack over a lined baking sheet.

Step 4: Start the soup. Heat the olive oil in a large pot or Dutch oven over medium heat. Add the onion, carrots, and celery, and cook, stirring often, until the vegetables are softened and just starting to turn golden, about 8 minutes.

Vegetables in a Dutch oven.

Step 5: Add the liquid and seasoning. Pour in the chicken broth, beef broth, water, and wine, then add the bay leaf, salt, and pepper. Bring the mixture to a boil, scraping up any browned bits from the bottom of the pot for extra flavor.

Vegetables boiling in broth.

Step 6: Add the pasta. Stir in the ditalini and cook, uncovered, at a gentle boil until the pasta is al dente, 8 to 10 minutes, stirring occasionally so it doesn’t stick to the bottom.

Boodles pouring into a Dutch oven of broth.

Step 7: Finish the soup. Taste and adjust the seasoning, if needed. Reduce the heat to low, then add the meatballs and spinach. Simmer for a few minutes, just until the spinach wilts and the meatballs are heated through.

Video Tutorial

More Italian Recipes to Bring to Your Table

Print

Italian Wedding Soup

Large pot of Italian wedding soup.
Tender meatballs, tiny pasta, and a flavorful broth come together in this comforting Italian classic.
Servings: 8
Prep Time: 50 minutes
Cook Time: 30 minutes
Total Time: 1 hour 20 minutes

Ingredients 

For the Meatballs

  • 1 large egg
  • 3 tablespoons finely chopped fresh chives
  • 2 teaspoons finely chopped fresh sage
  • 2 cloves garlic, minced
  • ¾ lb 85 or 90% lean ground beef
  • ½ lb sweet or hot Italian sausage, removed from the casings
  • ½ cup grated Parmigiano Reggiano
  • cup Italian seasoned bread crumbs
  • ¼ teaspoon salt

For the Soup

  • 2 tablespoons olive oil
  • 1 medium yellow onion, diced
  • 2 large carrots, diced
  • 2 stalks celery, diced
  • 6 cups high-quality chicken broth, such as Swanson (do not use low-sodium)
  • 2 cups high-quality beef broth, such as Swanson (do not use low-sodium)
  • 2 cups water
  • ½ cup dry white wine (optional)
  • 1 bay leaf
  • ½ teaspoon salt
  • ¼ teaspoon white pepper (okay to use black pepper)
  • 1 cup small pasta such as dittalini
  • 4 oz fresh spinach, stems trimmed and roughly chopped (once prepped, you should have about 3 packed cups)
  • Parmigiano Reggiano, for serving

Instructions

  • Make the meatballs: Preheat the oven to 350°F (175°C). Line a baking sheet with aluminum foil and set an oven-proof roasting rack over top. Spray the rack generously with nonstick cooking spray.
  • In a large bowl, beat the egg with the chives, sage and garlic. Add the remaining meatball ingredients and mash with your hands until evenly combined. Roll the mixture into tablespoon-size balls, about 1 in (2.5 cm) in diameter (it will make approximately 50 meatballs), and place on the prepared rack. Bake for 15 to 18 minutes, or until lightly browned and cooked through. Set aside.
  • Meanwhile, start the soup. In a large soup pot or Dutch oven over medium heat, heat the olive oil. Add the onions, carrots, and celery and cook, stirring frequently, until the vegetables are softened, about 8 minutes. Add the chicken broth, beef broth, water, wine, bay leaf, salt and pepper and bring to a boil. Add the pasta and cook, uncovered, at a gentle boil until the pasta is al dente, 8 to 10 minutes (or according to package directions). Taste the soup and adjust the seasoning, if necessary. Reduce the heat to low and add the spinach and meatballs. Simmer for a few minutes, until the spinach is wilted and the meatballs are warmed through. Ladle into bowls and serve with grated Parmigiano Reggiano.

Notes

Freezing Instructions: The soup can be frozen for up to 3 months, but wait until you reheat the soup to add the pasta. Defrost the soup in the refrigerator for 12 hours and then reheat it on the stovetop over medium heat until simmering. Add the pasta, and cook until the pasta is tender.

Nutrition Information

Per serving (8 servings)Calories: 359kcalCarbohydrates: 16gProtein: 23gFat: 22gSaturated Fat: 7gCholesterol: 83mgSodium: 930mgFiber: 2gSugar: 5g

This website is written and produced for informational purposes only. I am not a certified nutritionist and the nutritional data on this site has not been evaluated or approved by a nutritionist or the Food and Drug Administration. Nutritional information is offered as a courtesy and should not be construed as a guarantee. The data is calculated through an online nutritional calculator, Edamam.com. Although I do my best to provide accurate nutritional information, these figures should be considered estimates only. Varying factors such as product types or brands purchased, natural fluctuations in fresh produce, and the way ingredients are processed change the effective nutritional information in any given recipe. Furthermore, different online calculators provide different results depending on their own nutrition fact sources and algorithms. To obtain the most accurate nutritional information in a given recipe, you should calculate the nutritional information with the actual ingredients used in your recipe, using your preferred nutrition calculator.

4.93 from 277 votes

Add a Comment

Rate the recipe: 5 stars means you loved it, 1 star means you really disliked it




This site uses Akismet to reduce spam. Learn how your comment data is processed.

506 Comments

  • The correct translation of the name is Marriage Soup, not‘wedding’. It refers to the combination of chicken stock with beef, either in meatballs, as you suggest, or small bites. Good soup, wrong name.

    • This is perfect! Was wondering why the beef broth. Never made wedding soup with it before. Thanks!

      • So glad you like it! The beef broth just gives the soup a slightly richer flavor.

  • 5 stars
    Love this soup. We made this on a rainy day and we could not believe how tasty this was. We couldn’t find pancetta but the flavor is so good we didn’t miss this ingredient. Serve with crusty bread and a good salad.

  • 5 stars
    I am making this tomorrow. Can you sub the chicken broth for bone broth and I forgot the bay leaf 🤦‍♀️ Is this a must or can I get away not using it?
    Not worried about it not being good I’ve made many of your recipes and all turn out amazing !!! Lots of kid fans in the household 7 year old gonna be so happy for this soup

    • Yes and yes — hope everyone enjoys!

  • 5 stars
    Hi Jenn,

    I am a loyal reader of yours. I just purchased your second cookbook, and I can’t wait to try this tonight! For the meatballs, I don’t eat pork… would you recommend I add in some spicy Turkey sausage (cut out of casings) in addition to the beef? Or should I stick with all beef and season more like you suggested in the other comment? I don’t want them to come out dry or under seasoned.

    Thanks so much!
    Callie

    • Thanks for your support with the recipes and the cookbook! Sure, I think replacing the pork with turkey sausage sounds great – please LMK how it turns out with the tweak.

  • Has anyone thought it was greasy? Not sure what I did to cause that…

  • Can I substitute something non-dairy for the cheese? Or just leave it out altogether? Thanks as always!

    • You can just omit the cheese. Hope you enjoy!

  • 4 stars
    Overall I really enjoyed this recipe. It comes together easily and looks beautiful. I found the meatballs and soup a bit bland. For the meatballs, maybe a bit more salt. For the soup, it probably depends on what stock you use. I found the Trader Joe’s one a little thin on richness and flavor. I added more salt. And I felt it needed a bit more heat – next time I’ll try sauteeing the veggies with some red pepper and garlic. I also added a bit of lemon for some acid. But it’s a beautiful, filling soup and I’m glad I tried it! My husband loved it!

    • 5 stars
      Delicious soup! Used ground turkey, 1 less cup water and doubled the black pepper. Will make again.

  • 5 stars
    WONDERFUL SOUP! It’s a good idea to make a double batch of the meatballs as Jen suggested, to maximize time for the next round – because there WILL be repeats of this great soup. I made it as written, but sometimes add a bit of sriracha to my bowl for a bit of a heat kick (my husband doesn’t care for it, unless I sneak it into dishes – mainly soups and stews). My inner circle of friends and family are so thankful that I found your site. Thank you for your generosity in sharing, Jen!

  • Hi Jenn, for those of us in Australia that can’t access ground sausage (we have sausage meat but it’s not really seasoned and I’m pretty sure it’s mostly binder), what can we replace it with? I.e spices etc?

    Btw made your carrot cake yesterday, yummy! Even better the next day!

    • Hi Danielle, You can get away with using all ground beef here; just make sure it’s well seasoned as the sausage has a lot of seasoning. Some spices I would add — a bit of oregano, Italian seasoning, whole or ground fennel seeds, paprika, red pepper flakes, salt, and pepper. Hope that helps (and glad you enjoyed the carrot cake)!

      • Thankyou for taking the time to answer my question (and all the other questions) 🙂

        • My pleasure!

  • 5 stars
    I love this recipe as written. Amazing. One day we were rushed and didn’t have time to make the meatballs so we fried up italian sausage meat to replace the meatballs and it was also amazing. I would make it this way when I don’t have time for the meatball process.

    • Love this idea!!