
This cozy Italian soup brings together soft meatballs, fresh veggies, and tiny pasta swimming in a tasty broth. It’s just right for chilly nights or whenever you want something warm and satisfying.
I whipped up this soup for a family meal and it quickly turned into a favorite. The simple steps and fresh stuff make it a go-to when I want wholesome food with heart.
Needed Ingredients
- Ground pork and ground beef: equal parts for juicy, tasty meatballs. Pick fresh meat with a deep red shade.
- Breadcrumbs: hold the meatballs together and keep them soft. Use plain or Italian style, whichever you like.
- Grated Parmesan: brings a nutty, savory boost to the meatballs. Freshly grated works best.
- Chopped fresh parsley: adds brightness and a fresh herbal note. Flat-leaf parsley has the best flavor.
- Garlic and onion powder: subtle layers of flavor without overwhelming the meatballs.
- Salt and black pepper: basic seasonings to bring out all the flavors.
- Olive oil: for browning the meatballs and softening the veggies. Extra virgin is best for smell and taste.
- Chopped carrots, onions, and celery: the classic base that builds depth in the broth. Choose crisp, colorful veggies.
- Chicken broth or stock: the savory liquid that everything simmers in. Either homemade or store-bought works fine.
- Small pasta like acini di pepe: tiny shapes that cook quickly and blend with the soup.
- Baby spinach: adds a fresh green touch and a bit of earthiness. Pick leaves that look crisp and bright.
- Fresh lemon juice: lifts the soup with a little tang. Use ripe lemons for the best juice.
- Extra Parmesan for topping: to sprinkle over each bowl for a cheesy finish.
Step-by-Step Cooking
- Mix the Meatballs:
- Put ground pork, ground beef, breadcrumbs, Parmesan, parsley, garlic powder, onion powder, salt, and pepper in a big bowl. Mix them gently until even but don’t overdo it or the meatballs get tough.
- Make the Balls:
- Roll the mix into tiny balls about an inch wide. Small sizes cook faster and have a nice bite.
- Brown Meatballs:
- Heat olive oil in a large pot on medium. Cook meatballs in batches, turning them to brown all sides for about five minutes each round. Take them out and keep them aside.
- Cook the Veggies:
- In the same pot, add onions, carrots, and celery. Cook gently for about five minutes until soft and sweet aromas come out.
- Add Broth and Simmer:
- Pour in chicken broth, crank heat until boiling. Put the meatballs back, lower heat to simmer. Let it all cook for about twenty minutes so flavors mix and meatballs finish cooking.
- Add Pasta and Cook:
- Throw in the small pasta and simmer another ten minutes until pasta is tender but still firm. This adds nice texture contrast.
- Stir in Greens and Lemon:
- Mix in baby spinach and lemon juice only until spinach wilts, about two minutes. This keeps everything fresh and bright.
- Season and Serve:
- Give it a taste and fix salt and pepper as you like. Serve hot in bowls and add extra Parmesan on top for a rich touch.

Fresh parsley really lifts the meatballs and brightens the whole dish. I made this for a winter party once and everyone kept coming back for more, warmed by both the soup and good friends.
Storage Made Easy
Let the soup cool completely before popping it in the fridge. Keep it in a sealed container and eat within three days for the best taste. Meatballs are firm when reheated slowly on the stove, so leftovers hold up well. You can freeze portions too but add the spinach fresh when you warm it to keep it nice and tender.
Ingredient Swaps
Try ground turkey or chicken in place of beef and pork for a lighter twist. Swap out spinach for kale or Swiss chard if you want a different green texture. Use veggie broth instead of chicken and swap meatballs for vegetarian balls or mushrooms to make it meat-free.
Tasty Pairings
Serve with crusty Italian bread to soak up every bit of tasty broth. A crisp white wine like Pinot Grigio or Verdicchio goes great with this. A fresh arugula salad with lemon dressing balances out the soup’s rich flavors.

This soup is the perfect cozy meal on cold days and tastes even better the next day as all the flavors settle and deepen.
Frequently Asked Cooking Questions
- → Which pasta’s best for this soup?
Look for tiny shapes like orzo, ditalini, or acini di pepe since they cook fast and mix nicely with the meatballs and broth.
- → Can I swap meats in the meatballs?
Definitely, you can try turkey or chicken instead of the usual pork and beef for a lighter taste but still tasty.
- → Any tips to boost broth flavor?
Homemade chicken stock makes the broth richer. Also, cooking veggies slowly before adding broth helps deepen the flavor.
- → How to keep meatballs soft?
Mix meat gently with cheese, breadcrumbs, parsley, and spices. Don’t overmix and shape small, even balls so they stay tender after cooking.
- → How to add some heat to the soup?
Just toss in a little red pepper flakes while it simmers—you'll get a nice gentle spice that lifts the flavors.
- → How do I stop the spinach from getting mushy?
Put the baby spinach in right at the end and stir only until it wilts, about a minute or two, so it keeps its color and texture.