In a large skillet, melt the butter over medium heat. Once melted, add the diced onion and sauté for about 3-4 minutes until translucent. Add the minced garlic and cook for an additional minute until fragrant.
Sprinkle the flour over the onion and garlic mixture, stirring constantly for about 1-2 minutes to create a roux that helps thicken your dip.
Gradually whisk in the heavy cream, ensuring there are no lumps. Continue to stir until the mixture thickens slightly, about 3-5 minutes.
Stir in the Worcestershire sauce, Creole seasoning, crushed red pepper flakes, and nutmeg if using. Mix well to incorporate all the flavors.
Remove the skillet from heat and fold in the Parmesan and mozzarella cheeses until melted and combined. Add the sour cream and mix until smooth.
Gently fold in the chopped spinach and shrimp until everything is evenly coated. If using raw shrimp, ensure they’re cut into bite-sized pieces for even cooking.
Return the skillet to medium heat and cook the mixture for 5-7 minutes, stirring occasionally, until the shrimp are cooked through and opaque.
You can serve the dip directly from the skillet, garnished with extra cheese or fresh herbs, or transfer it to an oven-safe dish and broil for 2-3 minutes until bubbly and golden on top.