To the hot skillet, add 4 tablespoons unsalted butter to melt. Once melted, add in the onion with a pinch of kosher salt. Sauté the onion, stirring occasionally, until the onion is beginning to soften, about 3-4 minutes.
Stir in 3 tablespoons of all purpose flour and cook for 2-3 minutes to get rid of the raw flour smell.
Then, stir in the minced garlic and ½ teaspoon - 1 teaspoon of red pepper flakes (to taste), until the garlic is fragrant, about 30 seconds to 1 minute, stirring often to prevent burning.
Reduce to medium-low heat. Add in 4 cream cheese in small blocks, (Image ad stir them together with the onions to soften. Once the cream cheese has softened, stream in 8-10 ounces of half and half as needed to thin, and stir to combine. Once the mixture is well combined, thick, and creamy but spreadable, add in 2 tablespoons of fresh thyme and ¼ - ½ teaspoon of black pepper to taste.
Reduce the heat to low, then add in the drained spinach, and a small handful (about 1 ounce) of the parmesan cheese. Stir to combine the mixture and melt the cheese completely, before adding more cheese, one small handful at a time. Continue mixing until all the cheese is melted, then salt to taste.
Adjust seasonings to taste. Serve with more fresh parmesan, and enjoy!
Store leftovers in an airtight container in the fridge for 3-4 days. Reheat gently on the stovetop or in the microwave. heated gently on the stove or in the microwave. Add a splash of milk or cream if the spinach becomes too thick when reheating.