Add the diced chicken and cook until browned on all sides, about 5-7 minutes. Remove the chicken from the pot and set aside.
In the same pot, add the diced onion and cook for 2-3 minutes until softened.
Add the minced garlic and cook for another 1-2 minutes until fragrant.
Cooking
Pour in the chicken broth and add the diced tomatoes, basil, oregano, and red pepper flakes (if using). Bring to a simmer.
Add the cooked chicken back into the pot and let the soup simmer for 10 minutes to allow the flavors to meld together.
Stir in the chopped spinach and cook for an additional 2-3 minutes until wilted.
Lower the heat and stir in the heavy cream and Parmesan cheese. Continue stirring until the cheese has melted and the soup becomes creamy. Season with salt and pepper to taste.
Serve hot, garnished with fresh parsley or basil if desired.
Notes
Store leftovers in an airtight container in the refrigerator for up to 4 days. To freeze, allow the soup to cool completely before transferring to freezer-safe containers. Texture may change upon thawing.