I make this cozy, restaurant-quality Italian Wedding Soup with homemade beef-and-pork meatballs (tiny and tender), acini di pepe pasta, and wilted spinach in a flavorful chicken-and-beef broth. It’s weeknight-friendly, kid-approved, and perfect for cold-weather comfort food or casual entertaining. I cook it on the stovetop and include instructions for the Slow Cooker and Instant Pot.
In a medium bowl, break up the ground beef and ground pork. Add fresh breadcrumbs, Parmesan cheese, beaten egg, minced garlic, finely chopped parsley, Worcestershire sauce, dried oregano, paprika, salt, and pepper. Mix gently until all ingredients are evenly distributed.
Using your hands, roll out pea-sized meatballs about 1 inch in diameter. Place meatballs on a tray. Chill in the fridge for about 15-20 minutes.
Heat 1 tablespoon of olive oil in a large pot over medium heat. Add chilled meatballs in a single layer, leaving space between them so they brown evenly instead of steaming. Work in batches. Let them sear for about 2 minutes per side, turning occasionally, until they’re golden brown. Then, transfer the meatballs to a plate and continue with the next batch.
Prepare the soup
Add olive oil, onion, celery, carrots, and bell pepper to the same pot. Cook over medium heat for 5 minutes, stirring often, until softened. Add minced garlic and cook for an additional 30-60 seconds until fragrant.
Pour in the chicken broth and beef broth to deglaze the pot, scraping up all the browned bits with a spatula. Add the bay leaf, Italian seasoning, and red pepper flakes. Stir together and bring the soup to a gentle boil over medium-high heat. Then, reduce the heat to low and return the meatballs (and any juices from the plate) to the pot. Let it simmer for about 10-12 minutes, uncovered, until the meatballs are fully cooked and tender.
Stir in the acini di pepe pasta and cook for 6-7 minutes, stirring occasionally so it doesn’t stick to the bottom of the pot. When the pasta is almost al dente, remove the bay leaf and add baby spinach. Let cook for another 1-2 minutes or until wilted. Taste and adjust seasoning, if needed.
Ladle the soup into bowls and top with finely chopped parsley and grated Parmesan cheese. Enjoy!
Note: I provide helpful step-by-step photos + tips below this recipe card. ⬇️⬇️
Notes
I recommend chilling the meatballs - it prevents crumbling when you brown them and when they simmer.
Brown the meatballs in batches - if you crowd the pot, they’ll steam rather than sear, resulting in paler meatballs and a broth with less flavor.
Add pasta near the end and stir occasionally to prevent sticking.
If you love a thicker soup, let it sit 10 minutes before serving (the pasta will absorb a bit of broth).
Adjust seasonings (spices, herbs, and salt) to your preference.
Serve topped with grated Parmesan and crusty bread for dipping.
Slow Cooker (Crockpot) Method
Prepare the meatballs as written. Optional but recommended: brown them in a skillet with 1 tablespoon olive oil for 2–3 minutes per side for extra flavor.
Add veggies: onion, celery, carrots, bell pepper, garlic, chicken broth, beef broth, bay leaf, Italian seasoning, and red pepper flakes to the slow cooker.
Add meatballs: Gently nestle in the browned (or raw) meatballs and any juices.
Slow cook: Cook on LOW for 5–6 hours or HIGH for 2½–3 hours, until the meatballs are cooked through and vegetables are tender.
Add pasta: Stir in acini di pepe during the last 20–25 minutes on HIGH (or cook the pasta separately to keep it firm for leftovers).
Add spinach: Turn to WARM, remove the bay leaf, and fold in the spinach until just wilted (1–2 minutes). Taste, adjust seasonings, and top with parsley and Parmesan.
Instant Pot (Pressure Cooker) Method
Brown meatballs: Using Sauté with 1 tablespoon olive oil, quickly brown chilled 1-inch meatballs in batches (2–3 minutes for color). Remove meatballs to a plate.
Add veggies: Deglaze with a splash of broth, then sauté onion, celery, carrots, and bell pepper for 2–3 minutes; add garlic for 30 seconds.
Stir in other ingredients: chicken + beef broths, bay leaf, Italian seasoning, red pepper flakes, and return meatballs with juices.
Lock the lid and cook on High Pressure for 5 minutes; then do a quick release.
Add pasta: Switch to Sauté, add acini di pepe, and simmer 5–6 minutes (or cook pasta separately if you want it firmer).
Add spinach: Remove bay leaf, stir in spinach to wilt (1–2 minutes), taste, and finish with parsley and Parmesan.
Storage Tips
Storage: Refrigerate soup (without extra Parmesan) in airtight containers for 3–4 days.
Reheating: Warm gently on the stove over medium-low until hot. Avoid a rapid boil to keep meatballs tender.
Microwave: 60–90 seconds, stir, then 30-second bursts. Because pasta tends to absorb broth, add a splash of water or broth before reheating.
Freezing: For the best texture, freeze the Italian wedding soup without pasta up to 3 months. Thaw overnight, reheat, and cook fresh acini di pepe directly in the reheated soup.
Make-Ahead Tips
Pre-prepare the meatballs: Roll and brown meatballs up to 2 days ahead (or freeze raw on a sheet tray, then bag).
Cook everything except pasta and spinach: You can also cook the broth + veggies ahead, chill, and finish with pasta and spinach when serving.
Frequently Asked Questions
Can I bake the meatballs instead of pan-searing? Yes. Bake them at 400°F (200°C) for 10–12 minutes, then finish simmering in the soup. It’s hands-off and still delicious.
My meatballs fell apart—what went wrong? Usually, it's due to overmixing or too little binder. Mix just until combined, chill it, and make sure the pan is hot before searing. If using lean turkey/chicken, add 1–2 teaspoons olive oil and don’t skip the egg + breadcrumbs.
How do I keep the pasta from getting mushy? Cook just to al dente and serve. For make-ahead, cook the pasta separately and add it to each bowl, then ladle hot soup over the top.
Can I make this gluten-free? Yes—use GF breadcrumbs in the meatballs and GF small pasta (or cooked white rice). Check your Worcestershire is GF.
What greens work best if I don’t have spinach? Escarole is classic; kale or chard also work. Add hearty greens earlier (5–7 minutes) so they tenderize.