Fiskesuppe — Norwegian Cream Fish Soup

Food

Fiskesuppe — Norwegian Cream Fish Soup

A bowl of the Norwegian coast in winter light

Prep 20 min
Cook 30 min
Servings 4
There are soups that exist as an exercise in complexity — stocks that take two days, reductions built on reductions, garnishes that require their own mise en place — and then there is fiskesuppe, which is a different kind of achievement entirely. It is clean, direct, and quietly perfect, the sort of dish that makes you wonder what all the fuss in other cuisines is about. Every fishing village along the Norwegian coast has a version, which is to say every household in every fishing village has a slightly different version, which is to say there is no single recipe. What they share is a logic: a flavourful base of sweated root vegetables, a cream enrichment, pieces of fresh fish added late and briefly, and a finish of coastal herbs — dill in most of the country, chives in the south. The fish does not cook for long because the fish does not need long. This is not a long-cooked dish. The fish is the point, and the point of fish is its freshness. The vegetables — carrot, celeriac, leek — are cut small, which is not aesthetic laziness but structural intention. They cook through in eight minutes, they dissolve slightly into the broth, and they are tender enough to not require a knife at the table. The cream is not an indulgence but a necessity: without it, the soup would be good; with it, it becomes what it is supposed to be. Serve this in a wide bowl with a thick slice of crusty white bread or Scandinavian rye. In Norway it arrives on the table in winter, when the light outside is the colour of pewter and the sea is doing something dramatic on the other side of the window.

Scale Recipe

1 10 20

Instructions

0/6 complete

Sweat the vegetables

Melt the butter in a large, heavy-bottomed saucepan over medium-low heat. Add the diced onion and cook for 3 minutes until softened. Add the carrot, celeriac and leek. Season lightly with salt. Cook, stirring occasionally, for 8–10 minutes until all vegetables are just tender and the leek is silky. Do not let them brown.

Add the flour

Sprinkle the flour over the vegetables and stir to coat evenly. Cook for 1–2 minutes, stirring constantly — this cooks out the raw flour taste and builds the velouté base.

Add the stock

Pour in the fish stock gradually while whisking, ensuring no lumps form. Add the bay leaf. Bring to a gentle simmer and cook for 10 minutes, stirring occasionally, until the soup has thickened slightly and the vegetables are fully tender.

Add the cream

Pour in the heavy cream and return to a gentle simmer. Do not boil vigorously — heavy cream can break if overheated. Season generously with white pepper and additional salt. Taste and adjust. The base should be well-seasoned before the fish goes in — fish is not a forgiving ingredient for last-minute seasoning.

Add the fish

Add the white fish pieces first. Simmer very gently for 2 minutes. Add the salmon. Simmer for a further 2 minutes. Add the prawns (if using) and cook for 1–2 minutes until just pink and opaque. Remove the bay leaf.

Total fish cooking time is 4–5 minutes maximum. Overcooked fish is the most common fault in this dish.

Finish and serve

Remove from heat. Add the lemon juice, half the dill and half the chives. Taste one final time for salt, pepper and lemon balance. Ladle into warmed wide bowls. Scatter the remaining dill and chives over the top. Finish with flaky salt and a turn of white pepper. Serve immediately with bread on the side.
<button type="button" class="group/star p-0.5 transition-transform hover:scale-110 focus:outline-none focus-visible:ring-2 focus-visible:ring-citrus-400 rounded" hx-post="/api/community/rate" hx-vals='{&quot;slug&quot;:&quot;fiskesuppe-norwegian-cream&quot;,&quot;rating&quot;:1}' hx-target="#engagement-section" hx-swap="outerHTML" aria-label="Rate 1 out of 5" > <svg class="w-7 h-7 text-salt-300 group-hover/star:text-citrus-300 transition-colors" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" > <path stroke-linecap="round" stroke-linejoin="round" d="M11.48 3.499a.562.562 0 011.04 0l2.125 5.111a.563.563 0 00.475.345l5.518.442c.499.04.701.663.321.988l-4.204 3.602a.563.563 0 00-.182.557l1.285 5.385a.562.562 0 01-.84.61l-4.725-2.885a.562.562 0 00-.586 0L6.982 20.54a.562.562 0 01-.84-.61l1.285-5.386a.562.562 0 00-.182-.557l-4.204-3.602a.562.562 0 01.321-.988l5.518-.442a.563.563 0 00.475-.345L11.48 3.5z" /> </svg> </button> <button type="button" class="group/star p-0.5 transition-transform hover:scale-110 focus:outline-none focus-visible:ring-2 focus-visible:ring-citrus-400 rounded" hx-post="/api/community/rate" hx-vals='{&quot;slug&quot;:&quot;fiskesuppe-norwegian-cream&quot;,&quot;rating&quot;:2}' hx-target="#engagement-section" hx-swap="outerHTML" aria-label="Rate 2 out of 5" > <svg class="w-7 h-7 text-salt-300 group-hover/star:text-citrus-300 transition-colors" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" > <path stroke-linecap="round" stroke-linejoin="round" d="M11.48 3.499a.562.562 0 011.04 0l2.125 5.111a.563.563 0 00.475.345l5.518.442c.499.04.701.663.321.988l-4.204 3.602a.563.563 0 00-.182.557l1.285 5.385a.562.562 0 01-.84.61l-4.725-2.885a.562.562 0 00-.586 0L6.982 20.54a.562.562 0 01-.84-.61l1.285-5.386a.562.562 0 00-.182-.557l-4.204-3.602a.562.562 0 01.321-.988l5.518-.442a.563.563 0 00.475-.345L11.48 3.5z" /> </svg> </button> <button type="button" class="group/star p-0.5 transition-transform hover:scale-110 focus:outline-none focus-visible:ring-2 focus-visible:ring-citrus-400 rounded" hx-post="/api/community/rate" hx-vals='{&quot;slug&quot;:&quot;fiskesuppe-norwegian-cream&quot;,&quot;rating&quot;:3}' hx-target="#engagement-section" hx-swap="outerHTML" aria-label="Rate 3 out of 5" > <svg class="w-7 h-7 text-salt-300 group-hover/star:text-citrus-300 transition-colors" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" > <path stroke-linecap="round" stroke-linejoin="round" d="M11.48 3.499a.562.562 0 011.04 0l2.125 5.111a.563.563 0 00.475.345l5.518.442c.499.04.701.663.321.988l-4.204 3.602a.563.563 0 00-.182.557l1.285 5.385a.562.562 0 01-.84.61l-4.725-2.885a.562.562 0 00-.586 0L6.982 20.54a.562.562 0 01-.84-.61l1.285-5.386a.562.562 0 00-.182-.557l-4.204-3.602a.562.562 0 01.321-.988l5.518-.442a.563.563 0 00.475-.345L11.48 3.5z" /> </svg> </button> <button type="button" class="group/star p-0.5 transition-transform hover:scale-110 focus:outline-none focus-visible:ring-2 focus-visible:ring-citrus-400 rounded" hx-post="/api/community/rate" hx-vals='{&quot;slug&quot;:&quot;fiskesuppe-norwegian-cream&quot;,&quot;rating&quot;:4}' hx-target="#engagement-section" hx-swap="outerHTML" aria-label="Rate 4 out of 5" > <svg class="w-7 h-7 text-salt-300 group-hover/star:text-citrus-300 transition-colors" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" > <path stroke-linecap="round" stroke-linejoin="round" d="M11.48 3.499a.562.562 0 011.04 0l2.125 5.111a.563.563 0 00.475.345l5.518.442c.499.04.701.663.321.988l-4.204 3.602a.563.563 0 00-.182.557l1.285 5.385a.562.562 0 01-.84.61l-4.725-2.885a.562.562 0 00-.586 0L6.982 20.54a.562.562 0 01-.84-.61l1.285-5.386a.562.562 0 00-.182-.557l-4.204-3.602a.562.562 0 01.321-.988l5.518-.442a.563.563 0 00.475-.345L11.48 3.5z" /> </svg> </button> <button type="button" class="group/star p-0.5 transition-transform hover:scale-110 focus:outline-none focus-visible:ring-2 focus-visible:ring-citrus-400 rounded" hx-post="/api/community/rate" hx-vals='{&quot;slug&quot;:&quot;fiskesuppe-norwegian-cream&quot;,&quot;rating&quot;:5}' hx-target="#engagement-section" hx-swap="outerHTML" aria-label="Rate 5 out of 5" > <svg class="w-7 h-7 text-salt-300 group-hover/star:text-citrus-300 transition-colors" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" > <path stroke-linecap="round" stroke-linejoin="round" d="M11.48 3.499a.562.562 0 011.04 0l2.125 5.111a.563.563 0 00.475.345l5.518.442c.499.04.701.663.321.988l-4.204 3.602a.563.563 0 00-.182.557l1.285 5.385a.562.562 0 01-.84.61l-4.725-2.885a.562.562 0 00-.586 0L6.982 20.54a.562.562 0 01-.84-.61l1.285-5.386a.562.562 0 00-.182-.557l-4.204-3.602a.562.562 0 01.321-.988l5.518-.442a.563.563 0 00.475-.345L11.48 3.5z" /> </svg> </button>

Be the first to rate