Heat olive oil in a large soup pot over medium heat.
Add chopped onion and sauté until soft and translucent.
Stir in minced garlic and cook for about 30 seconds.
Add chopped sun-dried tomatoes and cook for 1–2 minutes.
Pour in chicken broth and bring the mixture to a gentle boil.
Add shredded chicken and Italian seasoning.
Reduce heat and simmer the soup for 20 minutes.
Stir in heavy cream and grated Parmesan cheese.
Add baby spinach and cook until wilted.
Taste and adjust salt and pepper as needed.
Garnish with fresh basil and serve warm.