Ingredients
Equipment
Method
Make the meatballs
- In a large bowl, mix ground beef, ground pork, Italian breadcrumbs, grated Parmesan cheese, egg, milk, garlic, parsley, salt, and black pepper until just combined.
- Roll the mixture into 3/4-inch meatballs and set them on a plate.
Build the soup base
- Heat olive oil in a large pot over medium heat, then add onion, carrots, and celery and cook for 6 minutes until softened.
- Stir in the garlic and cook for 30 seconds until fragrant.
Simmer
- Add chicken broth and bring to a boil.
- Gently drop in the meatballs and simmer for 8 to 10 minutes, until cooked through.
- Stir in the pasta and cook for 8 to 9 minutes, until tender.
- Add escarole or spinach and cook for 2 to 3 minutes, until wilted.
Finish and serve
- Taste and adjust the seasoning, then serve with extra Parmesan.
Notes
For tender meatballs, mix just until the ingredients come together—overmixing can make them tough. Cool leftovers quickly and refrigerate up to 4 days; freeze up to 3 months (freeze without extra Parmesan if possible). For a lighter option, swap half the meatballs for lean ground turkey and use part-skim milk.
