In a large mixing bowl, add the ground beef or turkey, breadcrumbs, grated Parmesan cheese, Italian seasoning, egg, salt, and black pepper. Use your hands or a spoon to mix all the ingredients until thoroughly combined.
Shape the mixture into small meatballs, approximately 1 inch in diameter. Place them on a plate or baking sheet and set aside.
In a spacious pot or Dutch oven, heat the olive oil over medium heat. Once the oil is hot, add the diced onion. Sauté for about 3-4 minutes, or until the onion becomes translucent and soft.
Add the minced garlic to the pot and sauté for an additional minute, stirring frequently to prevent the garlic from burning.
Gently add the prepared meatballs to the pot, allowing them to brown evenly on all sides for about 5-7 minutes. You may need to do this in batches to avoid overcrowding the pot.
Once all meatballs are browned, carefully pour in the chicken broth. Increase the heat to bring the soup to a gentle boil.
Reduce the heat to low and slowly add the heavy cream. Stir gently to incorporate the cream into the broth.
Fold in the halved cherry tomatoes, chopped spinach, and optional red pepper flakes. Let the soup simmer for an additional 10 minutes, allowing the spinach to wilt and the soup to thicken slightly.
Taste the soup and adjust the seasoning with more salt and pepper if needed.
Ladle the hot soup into bowls and garnish each serving with fresh basil leaves for a vibrant touch.
Notes
Serve with crusty bread and a sprinkle of extra Parmesan cheese for added flavor.