Melt the butter in a large pot over medium heat. Add the minced garlic and cook for one minute until fragrant.
Stir in the chopped artichoke hearts and cook for two minutes to warm them through.
Pour in the chicken broth and bring the mixture to a simmer.
Add the cubed cream cheese and stir until it melts completely into the broth.
Pour in the heavy cream and continue stirring until the soup is smooth and heated.
Add the fresh spinach and cook for two to three minutes until it wilts.
Stir in the Parmesan and mozzarella until both cheeses melt and the soup thickens.
Season with salt and black pepper, then serve hot.