The Ultimate Classic Meatball Soup for Cozy Winter Nights
Warm up with this Classic Meatball Soup! Tender beef and pork meatballs, tiny pasta, and fresh spinach in a savory broth. Ready in under an hour!
It’s a cold Tuesday night. You’re tired. Dinner needs to happen fast.
This Classic Meatball Soup is the ultimate winter hug in a bowl. It’s warm, hearty, and exactly what you need right now. You’re going to love how the savory broth hits your soul. It is the definition of pure comfort.
Why You’ll Love This Classic Meatball Soup
This soup is a total game-changer for your winter rotation. It combines juicy beef and pork meatballs with fresh, vibrant vegetables. It’s light enough for a quick meal but filling enough to satisfy. Your whole family will beg for seconds tonight.
It is also incredibly budget-friendly. You get restaurant-quality flavor without the high price tag. It’s the perfect way to warm up during those chilly evenings. You probably have most ingredients in your pantry right now.
Simple Cooking Steps
Don’t let the homemade meatballs intimidate you. You just mix, roll, and brown them in one pot. This one-pot method saves you from a mountain of dishes later. Even if you’re a kitchen newbie, you can totally nail this. It is fast and foolproof.
Ingredients You’ll Need
These ingredients are simple, fresh, and easy to find. Using a mix of beef and pork makes the juiciest meatballs possible.
- 500g ground beef
- 250g ground pork
- 1/2 cup breadcrumbs
- 1 large egg
- 1/4 cup grated Parmesan cheese
- 2 cloves garlic, minced
- 1 large onion, diced
- 2 large carrots, sliced
- 2 stalks celery, sliced
- 2 liters beef broth
- 1 cup ditalini pasta
- 2 cups fresh baby spinach
- 2 tablespoons olive oil
- 1 teaspoon dried oregano
- Salt and black pepper to taste
Step-by-Step Directions
- In a large bowl, combine beef, pork, breadcrumbs, egg, Parmesan, and half of the minced garlic to form 1-inch meatballs.
- Heat olive oil in a large pot over medium heat and brown the meatballs on all sides, then remove and set aside.
- In the same pot, sauté the onion, carrots, and celery until softened, approximately 5-7 minutes.
- Add the remaining garlic and oregano, cooking for 1 minute until fragrant.
- Pour in the beef broth and bring to a boil, then reduce heat and simmer for 15 minutes.
- Add the ditalini pasta to the pot and cook according to package directions until al dente.
- Return the meatballs to the pot and stir in the baby spinach until wilted.
- Season with salt and pepper before serving.
Best Ways to Enjoy It
Serve this soup piping hot in big, deep bowls. A side of crusty garlic bread is mandatory for dipping. You can also pair it with a crisp green salad. It’s the ultimate cozy night in meal for your family.
Storage & Reheating
Store leftovers in an airtight container for up to three days. The pasta might soak up some broth as it sits. Just add a splash of water when reheating on the stove. It actually tastes even better the next day! You can also freeze the meatballs separately.
Pro Tips for Best Results
- Do not overwork the meat when mixing.
- Use a small scoop for perfectly even meatballs.
- Brown the meat deeply for maximum flavor.
- Keep the meatballs small so they fit on a spoon.
- Add the spinach at the very last second.
- Salt your pasta water for extra flavor.
- Use high-quality beef broth for a richer base.
Ways to Switch It Up
- Use ground turkey for a lighter version.
- Swap ditalini for orzo or small shells.
- Add a pinch of red pepper flakes for heat.
- Try kale instead of spinach for more texture.
FAQs
Can I freeze this soup?
Yes, but freeze the broth and meatballs without the pasta. Pasta gets mushy when frozen and thawed.
What is ditalini pasta?
It is a very small, tube-shaped pasta. It is perfect for soups because it fits on a spoon.
Go grab your favorite pot and start rolling those meatballs!
— Jasmine

Ingredients
Method
- In a large bowl, combine beef, pork, breadcrumbs, egg, Parmesan, and half of the minced garlic to form 1-inch meatballs.
- Heat olive oil in a large pot over medium heat and brown the meatballs on all sides, then remove and set aside.
- In the same pot, sauté the onion, carrots, and celery until softened, approximately 5-7 minutes.
- Add the remaining garlic and oregano, cooking for 1 minute until fragrant.
- Pour in the beef broth and bring to a boil, then reduce heat and simmer for 15 minutes.
- Add the ditalini pasta to the pot and cook according to package directions until al dente.
- Return the meatballs to the pot and stir in the baby spinach until wilted.
- Season with salt and pepper before serving.
