Cook the Sausage: In a large pot, heat the olive oil over medium heat. Add the crumbled Italian sausage and cook until browned (5-7 minutes). Remove the sausage from the pot and set aside.
Sauté the Vegetables: In the same pot, add the diced onion and cook until translucent, about 5 minutes. Add the minced garlic and cook for another 1-2 minutes until fragrant.
Add Broth and Tomatoes: Pour in the chicken broth and add the diced tomatoes (with their juice). Bring the mixture to a boil.
Cook the Pasta: Add the uncooked ditalini pasta to the pot and cook according to the package instructions until al dente.
Combine Ingredients: Reduce the heat to low and return the cooked sausage to the pot. Stir in the chopped spinach, cream cheese, grated parmesan, and heavy whipping cream. Mix until the cream cheese is fully melted and the soup is creamy.
Season: Add the Italian seasoning, crushed red pepper flakes (if using), and salt and pepper to taste. Let the soup simmer for a few more minutes to allow the flavors to meld together.
Serve hot with extra Parmesan cheese on top, if desired.
