Preheat the oven to 425°F and place a rack in the center position.
Heat a large oven-safe cast iron skillet over medium heat. Add 1/4 cup salted butter and melt.
Add 1/2 large onion (finely diced) to the skillet and sauté about 5 minutes, until the onion is tender.
Add 4 cups baby spinach and stir about 1 minute, just until wilted. Transfer the cooked onion and spinach to a cutting board, let cool slightly, then chop into small pieces.
Return the skillet to low heat and add 12 oz cream cheese to the skillet. Stir and break the cream cheese into pieces as it softens; continue stirring until it is very soft and smooth (about 2 minutes).
Stir the chopped onion and spinach back into the melted cream cheese. Add 1 cup marinated artichoke hearts (drained and chopped), 1/2 cup plain Greek yogurt, 1/2 cup real mayonnaise, 1 lb cooked shrimp (peeled, deveined, tails removed, roughly chopped), 1 cup grated Parmesan cheese, and salt and pepper to taste. Stir until all ingredients are evenly combined.
Spread the mixture evenly in the skillet and sprinkle the remaining 1/4 cup grated Parmesan cheese over the top.
Bake in the preheated oven for 20 minutes, or until the dip is hot and bubbly. Remove from oven and serve immediately.