Calabrian Holiday Soup, also known as Minestra di Natale, is a hearty, rustic Italian soup traditionally served during the Christmas season in the Calabria region of Southern Italy. This comforting soup features tender meatballs, small pasta, seasonal vegetables, and leafy greens simmered in a rich, flavorful broth. Unlike lighter Italian soups, this one is substantial enough to serve as a complete meal, packed with protein, vegetables, and pasta in every bowl. The combination of homemade meatballs, fresh vegetables, and good broth creates layers of flavor that celebrate Italian home cooking at its finest. Perfect for holiday gatherings, cold winter nights, or anytime you want a soup that’s both nourishing and festive.
Serving Quantity: 8 servings
Preparation Time: 30 minutes
Cooking Time: 45 minutes
Total Time: 1 hour 15 minutes
Ingredients:
For the Meatballs:
- 1 pound ground beef
- Half cup breadcrumbs
- Quarter cup grated parmesan cheese
- 1 large egg
- 2 cloves garlic (minced)
- 2 tablespoons fresh parsley (chopped)
- 1 teaspoon salt
- Half teaspoon black pepper
For the Soup:
- 2 tablespoons olive oil
- 1 large onion (diced)
- 3 large carrots (diced)
- 3 celery stalks (diced)
- 4 cloves garlic (minced)
- 8 cups chicken or beef broth
- 1 can (14 ounces) diced tomatoes
- 1 can (15 ounces) white beans (drained and rinsed)
- 1 cup small pasta (ditalini, orzo, or acini di pepe)
- 4 cups fresh escarole or Swiss chard (chopped)
- 2 teaspoons Italian seasoning
- 1 teaspoon dried basil
- 1 bay leaf
- 1 teaspoon salt
- Half teaspoon black pepper
- Half teaspoon red pepper flakes (optional)
- Grated parmesan cheese (for serving)
- Crusty bread (for serving)
Nutrition Information (Per Serving):
- Calories: 365
- Protein: 25g
- Carbohydrates: 38g
- Fat: 12g
- Sugar: 6g
- Sodium: 1065mg
- Fiber: 7g
- Cholesterol: 65mg
- Iron: 4mg
- Calcium: 185mg
1. Make the Meatballs
In a large bowl, combine the ground beef, breadcrumbs, grated parmesan cheese, egg, minced garlic, chopped parsley, salt, and black pepper. Use your hands to mix everything together gently but thoroughly until just combined. Don’t overmix or the meatballs will be tough. Roll the mixture into small meatballs, about three-quarters to one inch in diameter. You should get approximately 30 to 35 small meatballs. Keep them small so they cook quickly and are easy to eat in the soup. Place the formed meatballs on a plate and set aside while you start the soup.
2. Brown the Meatballs
Heat one tablespoon of olive oil in a large soup pot or Dutch oven over medium-high heat. Working in batches to avoid crowding, add the meatballs and brown on all sides, about 4 to 5 minutes total. The meatballs don’t need to be cooked through, just nicely browned. The browning adds flavor and helps them hold their shape during simmering. Transfer the browned meatballs to a plate and set aside. They’ll finish cooking in the soup later.
3. Sauté the Vegetables
Add the remaining tablespoon of olive oil to the same pot. Add the diced onion, carrots, and celery. Cook over medium heat for 6 to 8 minutes, stirring occasionally, until the vegetables soften and the onion becomes translucent. Add the minced garlic and cook for another minute until fragrant. These aromatic vegetables create the flavor foundation of the soup. The browning that happened when you cooked the meatballs adds depth to the vegetables as they cook.
4. Build the Broth
Pour in the chicken or beef broth, using a wooden spoon to scrape up any browned bits from the bottom of the pot. Add the diced tomatoes with their juices, drained white beans, Italian seasoning, dried basil, bay leaf, salt, black pepper, and red pepper flakes if using. Stir everything together until well combined. Bring the soup to a boil over high heat, then reduce to a simmer. The soup base should be flavorful and aromatic at this point.
5. Add Meatballs and Simmer
Carefully add the browned meatballs back to the pot. They should be mostly submerged in the broth. Cover the pot and simmer gently for 20 minutes, stirring occasionally. The meatballs will finish cooking through and the flavors will meld together beautifully. The soup should be bubbling gently, not boiling vigorously. This gentle simmering ensures tender meatballs and allows the vegetables to become completely tender.
6. Add Pasta and Greens
After 20 minutes, add the small pasta to the soup. Stir well and cook according to the pasta package directions, usually 8 to 10 minutes, until al dente. During the last 5 minutes of cooking, add the chopped escarole or Swiss chard. Stir until the greens wilt into the soup. The greens add color, nutrition, and authentic Italian flavor. Taste and adjust the seasonings with more salt and pepper if needed. Remove and discard the bay leaf.
7. Serve
Ladle the hot soup into bowls, making sure each serving gets meatballs, pasta, vegetables, and greens. The soup should be thick and hearty, more like a stew than a brothy soup. Top each bowl with freshly grated parmesan cheese. Serve immediately with crusty Italian bread for dipping and soaking up the flavorful broth. This soup is a complete meal in a bowl and needs only bread and perhaps a simple salad alongside.
Tips for Perfect Calabrian Holiday Soup
Make the meatballs small, about three-quarters of an inch. Small meatballs are traditional for this soup and are easier to eat with a spoon.
Ground pork or a combination of beef and pork can replace all beef. The mixture creates more flavorful, tender meatballs.
Don’t skip browning the meatballs. This step adds crucial flavor and helps them hold together during the long simmering time.
Escarole is traditional but Swiss chard, kale, or spinach work beautifully. Add heartier greens earlier, delicate ones like spinach at the very end.
The soup thickens as it sits because the pasta absorbs liquid. When reheating leftovers, add extra broth to restore the right consistency.
Make the meatballs ahead and freeze them uncooked. Add frozen meatballs directly to the soup, increasing simmering time by 10 minutes.
This soup tastes even better the next day after flavors have melded. Make it ahead for easy entertaining or meal prep.
Store leftovers in airtight containers in the refrigerator for up to 4 days. The soup also freezes well for up to 3 months.
Different small pasta shapes work equally well. Ditalini is traditional but orzo, acini di pepe, or even broken spaghetti are authentic options.
Add a parmesan rind to the soup while it simmers for extra savory depth. Remove it before serving. This adds wonderful umami richness.
For a lighter version, use ground turkey or chicken for the meatballs. The flavor is milder but still delicious and satisfying.
Fresh tomatoes can replace canned when in season. Use about 2 cups of diced fresh tomatoes for authentic flavor.
The white beans add creaminess and protein. Cannellini beans are traditional but great northern or navy beans work equally well.
Make it vegetarian by omitting meatballs and using vegetable broth. Add extra beans or chickpeas for protein.
This soup is naturally gluten-free if you use gluten-free pasta and breadcrumbs. Everything else is already gluten-free.
Add a splash of red wine vinegar at the end for brightness that balances the rich broth. Just a teaspoon adds wonderful complexity.
Serve with a simple arugula salad dressed with lemon and olive oil. The peppery greens and bright lemon complement the hearty soup.
Different regions of Calabria have variations. Some add potatoes, others use different greens. Make it your own based on what you have.
The soup can be made in a slow cooker. Brown meatballs and sauté vegetables first, then transfer everything to the slow cooker. Cook on low for 6 hours, adding pasta and greens during the last 30 minutes.
This is the perfect soup for using up holiday leftovers. Leftover ham, turkey, or roast can be diced and added instead of making meatballs for a quicker version.
