The rich aroma of savory meatballs simmering alongside tender vegetables in a flavorful broth makes Italian Wedding Soup an irresistible comfort food classic. This hearty, traditional Italian-American soup beautifully marries (pun intended!) delicate meatballs with nutritious greens and tiny pasta in a light yet satisfying broth. Despite its romantic-sounding name, Italian Wedding Soup isn’t actually served at Italian weddings—rather, the name comes from the perfect “marriage” of flavors and ingredients. You’ll learn how to create this perfectly balanced soup with tender meatballs, vibrant vegetables, and a flavorful broth that will warm you from the inside out.
Why You’ll Love This Recipe
This homemade Italian Wedding Soup delivers restaurant-quality flavor with simple ingredients and straightforward techniques. The combination of tender, herb-infused meatballs swimming in a savory broth alongside al dente pasta creates a delightful textural contrast in every spoonful. The brightness of fresh spinach balances the richness of the meatballs, while the tiny acini de pepe pasta adds a pleasing chewiness that makes each bite interesting.
What sets this recipe apart is its versatility—it’s elegant enough for Sunday dinner but easy enough for weeknight meals. The soup comes together in under an hour but tastes like it’s been simmering all day. It’s also a complete meal in one bowl, packed with protein, vegetables, and pasta. Whether you’re fighting a cold, feeding a family, or just craving something comforting, this traditional wedding soup recipe delivers satisfaction without complexity.
Ingredients List for the Italian Wedding Soup
These carefully selected ingredients create the perfect balance of flavors in this traditional soup. The combination of beef and pork for the meatballs provides optimal texture and richness, while the fresh vegetables and herbs bring brightness to the savory broth.
- 1 Tablespoon olive oil
- ½ lb. ground beef (85% lean)
- ½ lb. ground pork
- 1 egg (beaten)
- 1/2 cup Italian breadcrumbs
- ¼ cup Parmesan cheese (grated)
- 3 cloves garlic (minced)
- 1/3 cup fresh parsley (finely chopped)
- ¾ teaspoon salt
- ¼ teaspoon pepper
- 1 yellow onion (diced)
- 1 ¼ cups carrots (diced)
- 2 celery ribs (diced)
- 3 cloves garlic (minced)
- 8 cups chicken broth
- 2 teaspoons Italian seasoning
- ¾ cup acini de pepe pasta (uncooked)
- 4-5 cups fresh spinach
- Salt/pepper (to taste)
- Parmesan cheese (freshly grated)
Pro Tips
For the best Italian Wedding Soup, follow these critical techniques that elevate this recipe from good to outstanding:
First, handle the meatball mixture with a light touch. Overworking the meat will result in dense, tough meatballs rather than the tender, juicy ones this soup is known for. Mix just until ingredients are combined, then gently roll into small, bite-sized balls for the perfect soup-spoon size.
Second, cook the pasta separately rather than directly in the soup. This prevents the pasta from absorbing too much broth and becoming mushy, especially if you plan to have leftovers. Adding cooked pasta to individual serving bowls maintains the perfect texture throughout multiple servings.
Lastly, use homemade chicken broth if possible, or enhance store-bought broth by simmering it with a Parmesan rind for 20-30 minutes before adding the other ingredients. This infuses the broth with a subtle umami richness that commercial broths often lack, giving your Italian Wedding Soup exceptional depth of flavor.

Instructions
Step 1: Prepare and Brown the Meatballs
Gently combine the meatball ingredients, don’t overwork the meat. Roll into 3/4-inch balls.
Heat olive oil in a large soup pot over medium-high heat.
Brown the meatballs in batches for about 2 minutes. The middle of the meatballs will finish cooking in the soup. Remove and set aside.
Step 2: Vegetables and Aromatics
Add the onions, carrots, and celery and soften over medium heat for 6 minutes, until softened. Add a splash of olive oil during cooking if needed.
Add the garlic and Italian seasoning and cook for 1 minute.
Step 3: Broth and Pasta
Add the chicken broth. Bring to a boil, then reduce to a simmer.
Add the cooked meatballs and simmer gently while you boil the pasta separately until al dente. Drain once cooked through and add the pasta to serving bowls. (Otherwise the pasta tends to absorb the broth during storage. If you don’t anticipate leftovers, you can cook the pasta in the soup or add the cooked pasta to the pot of soup.)
Step 4: Finish and Serve
Stir in the spinach and cook until wilted, about 2 minutes.
Ladle the soup into serving bowls and garnish with freshly grated Parmesan cheese. Serve!
Variations
This classic Italian Wedding Soup recipe is wonderfully adaptable to different dietary needs and preferences. For a lighter version, substitute ground turkey or chicken for the beef and pork in the meatballs. This reduces the fat content while maintaining a tender texture, especially if you choose dark meat ground poultry.
For a gluten-free adaptation, replace the Italian breadcrumbs with gluten-free breadcrumbs or almond flour, and swap the acini de pepe pasta with gluten-free orzo or small gluten-free pasta shapes. The soup’s essential character remains intact with these substitutions.
Vegetable lovers can enhance the nutritional profile by adding additional greens—try replacing half the spinach with bitter greens like escarole or kale for a more traditional Italian approach. These heartier greens add texture and a deeper flavor dimension to the traditional wedding soup experience.
Storage and Serving
Italian Wedding Soup stores beautifully, actually improving in flavor after a day in the refrigerator. Store the soup and pasta separately in airtight containers for up to 4 days. For longer storage, freeze the soup (without pasta) for up to 3 months. Thaw overnight in the refrigerator and reheat gently on the stovetop, adding fresh pasta when serving.
For a complete meal, serve this wedding soup with crusty Italian bread and a simple side salad dressed with olive oil and lemon juice. The bright acidity of the salad perfectly complements the savory richness of the soup. For special occasions, pair your soup with bruschetta or a small antipasto platter for an authentic Italian dining experience.
For a beautiful presentation, serve the soup in wide, shallow bowls that showcase the colorful vegetables and meatballs, with a generous sprinkle of freshly grated Parmesan and a final drizzle of extra virgin olive oil on top.
FAQs
Can I make Italian Wedding Soup ahead of time?
Yes! This soup is perfect for make-ahead meals. Prepare the soup without the pasta and store in the refrigerator for up to 3 days. Cook pasta separately and add when reheating to serve. The flavor actually improves after a day as the ingredients meld together.
Why is it called “wedding soup” if it’s not served at weddings?
The name comes from the Italian “minestra maritata” which means “married soup,” referring to the harmonious marriage of flavors between the meat and vegetables—not actual marriage ceremonies. It’s a mistranslation that stuck in American culture.
Can I use frozen spinach instead of fresh?
Yes. Substitute with 1 cup thawed frozen spinach, thoroughly squeezed to remove excess moisture. Add it at the same point in the recipe, but it will need less time to incorporate into the soup.
What can I substitute for acini de pepe pasta?
Any small pasta works well—orzo, stelline (tiny stars), or small shells are excellent alternatives. Just adjust cooking time according to package instructions for the pasta you choose.
How do I know when the meatballs are cooked through?
The meatballs are fully cooked when they reach an internal temperature of 160°F (71°C) and show no pink in the center. Since they’re small, they usually cook through during the simmering process after being browned.
Italian Wedding Soup
- Prep Time: 15 mins
- Cook Time: 30 mins
- Total Time: 45 mins
- Yield: 4 people 1x
- Category: Dinner
- Method: Cooking
- Cuisine: American
Description
Looking for a hearty and delicious dinner idea? Try this comforting Italian Wedding Soup recipe today! Discover a new favorite dish.
Ingredients
- 1 Tablespoon olive oil
- ½ lb. ground beef (85% lean)
- ½ lb. ground beef
- 1 egg (beaten)
- 1/2 cup Italian breadcrumbs
- ¼ cup Parmesan cheese (grated)
- 3 cloves garlic (minced)
- 1/3 cup fresh parsley (finely chopped)
- ¾ teaspoon salt
- ¼ teaspoon pepper
- 1 yellow onion (diced)
- 1 ¼ cups carrots (diced)
- 2 celery ribs (diced)
- 3 cloves garlic (minced)
- 8 cups chicken broth ()
- 2 teaspoons Italian seasoning
- ¾ cup acini de pepe pasta (uncooked)
- 4–5 cups fresh spinach
- Salt/pepper (to taste)
- Parmesan cheese (freshly grated)
Instructions
Step 1 – Stove Top Method (See notes for Crock Pot & Instant Pot Methods). Gently combine the meatball ingredients, don’t overwork the meat. Roll into 3/4-inch balls. Heat olive oil in a large soup pot over medium-high heat. Brown the meatballs in batches for about 2 minutes. The middle of the meatballs will finish cooking in the soup. Remove and set aside.
Step 2 – Vegetables and Aromatics. Add the onions, carrots, and celery and soften over medium heat for 6 minutes, until softened. Add a splash of olive oil during cooking if needed. Add the garlic and Italian seasoning and cook for 1 minute.
Step 3 – Broth and Pasta Add the chicken broth. Bring to a boil, then reduce to a simmer. Add the cooked meatballs and simmer gently while you boil the pasta separately until al dente. Drain once cooked through and add the pasta to serving bowls. (Otherwise the pasta tends to absorb the broth during storage. If you don’t anticipate leftovers, you can cook the pasta in the soup or add the cooked pasta to the pot of soup.)
Step 4 – Finish and Serve. Stir in the spinach and cook until wilted, about 2 minutes. Ladle the soup into serving bowls and garnish with freshly grated Parmesan cheese. Serve!
Notes
Try This Recipe and Leave a comment Below, your opinion matters to me!
Nutrition
- Serving Size: 4 serving
- Calories: 400
- Sugar: 5g
- Sodium: 400mg
- Fat: 10g
- Saturated Fat: 3g
- Unsaturated Fat: 7g
- Trans Fat: 0g
- Carbohydrates: 40g
- Fiber: 5g
- Protein: 15g
- Cholesterol: 50mg