Heat the olive oil in a large pot or Dutch oven over medium heat. Add the onion and carrots and cook for 5–6 minutes, stirring occasionally, until softened.
Stir in the garlic, Italian seasoning, and red pepper flakes and cook for 1 minute, until fragrant.
Add the sun-dried tomatoes, beans, and vegetable broth. Bring to a boil, then reduce the heat and simmer for 15 minutes.
Using a potato masher or the back of a spoon, mash about one-third of the beans against the side of the pot to thicken the soup.
Stir in the spinach and cook for 1–2 minutes, until wilted.
Reduce the heat to low and stir in the cream and Parmesan. Season with salt and pepper to taste.
Ladle into bowls and top with extra Parmesan. Serve warm with crusty bread.