Italian wedding soup is a broth-based soup built around small ground-meat meatballs, leafy greens, and egg ribbons — the name comes from the Italian minestra maritata, meaning the marriage of greens and meat. It makes a full, satisfying meal in a single bowl, which is exactly why it earns a spot in a regular weeknight rotation. This version keeps the ingredient list honest and the steps manageable without cutting corners on flavor.
Why this recipe works
Two things carry this soup. First, keeping the meatballs small — roughly marble-sized — means they cook through quickly in the simmering broth and fit on a spoon alongside greens and pasta without any awkward cutting. Ground pork and beef together give the meatballs enough fat to stay tender rather than turning dense and rubbery; all-lean meat is a common shortcut that produces a noticeably worse result. Second, the egg step only works if the broth is at a hard, rolling boil when you pour the beaten eggs in a slow, steady stream while stirring. That combination of high heat and constant motion sets the eggs into thin, silky ribbons instead of cloudy scrambled clumps — and it happens fast, so have everything else ready before you reach that step.
What can go wrong
- Meatballs fall apart in the broth. This usually means the mixture was too wet or under-mixed. Make sure the egg and breadcrumbs are fully incorporated and the mixture holds its shape when rolled. Chilling the formed meatballs for 15 minutes before dropping them in the soup also helps them hold together.
- The greens turn army-green and mushy. Spinach and escarole overcook in minutes. Add them in the last 3–4 minutes only, not at the start of simmering. If you are making a big batch to serve in stages, keep the greens out entirely and stir them into each portion as you reheat it.
- The broth tastes thin. Store-bought broth varies a lot. If yours lacks depth, add a Parmesan rind to the pot while it simmers — pull it out before serving. Skip the garnish of extra Parmesan shavings on top; just stir a spoonful of grated Parmesan directly into the hot broth instead, which actually improves the flavor rather than sitting on the surface.
- Meatballs are unevenly sized and some are undercooked. Use a small cookie scoop or a teaspoon measure to portion them consistently. Ground pork must reach an internal temperature of 160°F (71°C); with marble-sized meatballs in simmering broth this takes about 8–10 minutes, but check a few with an instant-read thermometer if you are unsure.
- Pasta turns to mush in leftovers. Small pasta like acini di pepe absorbs broth aggressively as it sits. Cook the pasta separately and add it to individual bowls at serving time, storing it apart from the soup if you plan on leftovers.
Leftovers and meal prep
The soup keeps well in the fridge for up to 4 days in a sealed container. Store the pasta separately so it does not soak up all the broth overnight. Reheat on the stovetop over medium heat until the broth is fully simmering before serving — do not just warm it to lukewarm, especially with the pork-and-beef meatballs. For freezing, leave out the eggs and greens entirely; freeze the broth and meatballs together for up to 3 months, then add fresh greens and the egg step when you reheat. Frozen meatballs can also be pulled out individually and dropped straight into a fresh pot of broth, which makes this a useful recipe to batch-cook on a weekend.
Simple Italian Wedding Soup Recipe
Ingredients
½ pound ground pork (minced pork)
½ pound ground veal (minced veal)
- ½ pound meatloaf mix
1 slice bread - stale ¼ cup milk
¼ medium yellow onion - finely minced
¼ tablespoon parsley - finely minced
1 pinch dried thyme
3 medium egg
- ½ cup orzo - uncooked
- 1 bunch collard greens
Instructions
- Meatball Instructions
- Beat one egg with the milk. Soak the stale bread in the milk. Put together the ground meat and mix it with the bread. The ground veal is optional. Add the onion, parsley, and thyme and season with salt and pepper. If you are not using meatloaf, just add parmesan to the ground meat.
- Form small meatballs in about the size of a cherry. Boil in a pan of water for about 5 to 6 minutes. Remove the mini meatballs with a slotted spoon and set aside.
- Orzo Instructions
- Pour into a pot of boiling water. When the water starts to boil again, lower the heat and cook until almost done. It will continue cooking in the soup. Remove the orzo with a slotted spoon and set aside.
- Wash the collard. Discard the tough stems, roll them up tightly and slice them into ½-inch slices. Turn the rolls sideways and slice them perpendicular to form little squares.
- Broth Instructions
- Bring 4 quarts of water to a boil, and add enough chicken bouillon or Minor's chicken extract to make the broth taste good.
- Add the greens, the carrots, the meatballs and the orzo. Season to taste.
- Break the remaining eggs into a bowl and beat vigorously. Bring the soup to a hard boil and pour the beaten eggs in a thin stream into the boiling broth.
- Let simmer for 1 hour.
- Add grated Parmesan cheese before serving.
Nutrition
Common questions
Can I use all ground beef instead of a pork-beef mix?
Yes, but the meatballs will be slightly firmer and less juicy. If you go all-beef, choose 80/20 ground beef rather than a leaner blend to keep enough fat in the mix.
Do I have to include the egg ribbons?
No — the soup works fine without them. The eggs add body and a little extra protein, but families who are not fans of the texture can skip that step entirely with no other changes needed.
Can I use frozen spinach instead of fresh greens?
Yes. Thaw it completely and squeeze out as much water as possible before adding it, otherwise it will water down the broth. Stir it in during the last 2 minutes since it only needs to heat through.
How do I know when the meatballs are fully cooked?
Cut one open — there should be no pink inside, and an instant-read thermometer should read 160°F (71°C) for the pork-beef mix. In a properly simmering broth, marble-sized meatballs typically reach this temperature in 8–10 minutes.
Can I make the meatballs ahead of time?
Yes, and it actually makes the day-of cooking much faster. Roll and refrigerate the raw meatballs up to 24 hours in advance, or freeze them on a tray and transfer to a bag for up to 2 months. Drop frozen meatballs straight into simmering broth and add a few extra minutes of cooking time.
What pasta works if I cannot find acini di pepe?
Orzo is the easiest substitute and is widely available. Ditalini or small elbow pasta also work. Avoid anything large — the point is that the pasta fits on a spoon alongside a meatball and some greens.
