
A comforting and vibrant Italian-style soup packed with juicy beef meatballs, tender vegetables, and hearty pasta. Finished with a swirl of fresh pesto and fragrant basil, it's a complete meal in a bowl that's ready in under 30 minutes.
Heat the olive oil in a large saucepan over medium-high heat. Add the beef meatballs and fry until browned on all sides. Once browned, remove the meatballs from the pan and set them aside on a plate.
In the same pan, add the chopped carrot, celery, and onion. Sauté for about 10 minutes until the vegetables have softened. Stir in the garlic, dried oregano, and bay leaf, cooking for another minute until fragrant.
Pour in the chopped tomatoes, cannellini beans, pasta shapes, and stock. Bring the mixture to a gentle simmer.
Return the meatballs to the pan. Continue to simmer until the pasta is tender and the meatballs are fully cooked through.
Taste and season with salt and pepper. If the tomatoes are too acidic, add a dash of vinegar or a pinch of sugar to balance the flavors. Ladle into four bowls, swirl a tablespoon of pesto into each, and garnish with fresh basil leaves to serve.
For the best flavor, use a high-quality low-salt stock. If you plan on having leftovers, you may want to cook the pasta separately and add it to each bowl, as pasta tends to absorb the broth and become mushy when stored in the soup.




