Sauté the onions in oil and butter, add wine
Heat oil and butter in the bottom of a large pot (6-qt) on medium heat. Add the onions and cook until softened, about 5 minutes.
Add the wine, if using, and increase the heat. Cook uncovered until the wine reduces by half. (If you’re not using wine, add 1/4 cup of water with the clam juice in the next step.)
Add the potatoes, clam juice, spices, then simmer
Add the potatoes, clam juice, bay leaf, thyme, salt, pepper, and Old Bay seasoning. Make sure the potatoes are just barely covered with the liquid in the pot. If needed, add a little water to cover them.
Bring to a simmer, then lower the heat to medium and cook, covered, until the potatoes are almost done, about 10-15 minutes.
In a separate pot, heat the cream until steamy (not boiling).
Add the fish to soup, add hot cream
Add the fish to the pot of potatoes and add the heated cream. Return to the stove. Cook on low heat, uncovered, until the fish is just cooked through, about 10 minutes.
Watch the heat closely! If you're using straight heavy cream, it's less likely to curdle, even if the soup reaches a boil. However, if you substitute light cream, half-and-half, or milk, the mixture will probably curdle if it nears boiling (which is why I prefer using straight heavy cream).
Keep the temperature so that it barely gets steamy, but not simmering.
When the fish is just cooked through, remove from heat.
Mix in the parsley. The flavors will improve if the soup rests 30 minutes before serving.
Serve with crusty bread or oyster crackers (not for gluten-free version).