Place the smoked haddock in a small saucepan and pour milk over it just until the fish is covered (if it has skin on it, place it in the pan so the skin is facing down). Set aside and let it sit for 15 minutes. After 15 minutes, it's time to poach the fish. Gently heat the milk. Once it comes to a very low simmer, gently cook the haddock for about 5 or until just cooked through. Let it cool briefly while you prepare the other ingredients.: The moment you put the cold smoked haddock into the chilled milk , you will smell a subtle sea brine beginning to unfold, like a soft echo of the ocean. Warm the pan very gently so that the milk reaches a barely perceptible shimmer, not a rolling boil, because rapid heating will tighten the fish's protein and make the texture rubbery. Keep the saucepan on the lowest heat and watch for tiny pearls around the edge, which signal the milk is hot enough. A common mistake is rushing this step by turning the heat too high, which makes the fish flake apart and lose that delicate, silky texture you want. If you notice the milk rising, pull the pan back from the heat briefly to calm it down.
Melt the butter in a pot and cook the onions until they are soft and translucent, 5-7 minutes. Add the cubed potatoes and cook for another couple of minutes. Pour in milk from the cooked smoked haddock, add the potatoes, salt and pepper. Bring the milk to a gentle simmer to avoid it scorching, and simmer the potatoes, covered, until they're soft, about 10 minutes. Use a potato masher to mash some of the potatoes so that you have a mixture of mashed, small, and large chunks. If you prefer a smoother, thicker consistency, mash them a little more. For the creamiest results I recommend pureeing some of the potatoes, either in a blender or using an immersion blender. Stir in the cream and let it heat through for a minute. Remove any skin and bones from the cooked smoked haddock and then use a fork to flake it off into chunks. Add the smoked haddock to the soup and let it heat through for a minute or two. Add salt and pepper to taste. Served sprinkled with some fresh parsley. Serve with Scottish oatcakes or some good hearty bread. Makes 4 generous servings.: While the smoked haddock rests in the warming milk , take a breath and prep the aromatics, because this pause deepens flavor. The gentle infusion at low heat draws out smoky, saline notes without aggressive cooking, and you will notice the milk take on a pale, fishy perfume that is pleasant and savory. Use this time to dice the potatoes and chop the onion , so everything is ready when you begin the stove top steps. Avoid skipping this rest, as the short steeping period is what gives the broth its characteristic depth.
After 15 minutes, gently heat the milk and cook the haddock for about 5 minutes or until just cooked through: As you return the saucepan to the heat, do so slowly so the milk warms evenly and does not scorch. In these five minutes, the fish will lose its raw translucence and flake easily when prodded with a fork, but it should remain tender and moist. You will see the milk take on a richer color, and the kitchen will fill with a comforting, smoky aroma. A frequent error is overcooking here, which dries the fish and weakens the soup's texture. As soon as the fish yields under light pressure, remove the pan from the heat and let it cool briefly before handling.
Melt the butter in a pot and cook the onions until soft and translucent: In a separate heavy bottom pot, melting the butter slowly allows it to foam and release its nutty aroma, which lays a warm base for the onion . Sauté the finely chopped onion over medium low heat so it softens and sweetens without taking color, stirring occasionally. The sound should be a gentle whisper rather than a strong sizzle, a sign you are coaxing sweetness, not browning. If the onions brown, the flavor will shift, so lower the heat if they start to color. This step builds a mellow backbone that complements the smoky fish later.
Add the cubed potatoes and cook for another couple of minutes: Toss the diced potatoes into the butter and softened onion , coating each cube so they begin to take on warmth. After a couple of minutes you will notice a faint toasty scent from the butter mingling with the onion sweetness. This brief pre cooking jumpstarts the potatoes so that when you add the poaching milk , they reach tenderness evenly. A common misstep is adding cold liquids to a cold pot; make sure the pot is warm so the potatoes begin cooking immediately.
Pour in milk from the cooked smoked haddock, add the potatoes, salt and pepper: Carefully strain or pour the infused milk into the pot with the butter, onion , and potatoes . The smell intensifies as the smoky, creamy liquid meets the warm vegetables. Add the measured kosher salt and freshly ground black pepper now, keeping in mind you can adjust later because the smoked haddock will contribute additional salt. Stir gently to combine and distribute the heat evenly, avoiding vigorous stirring that can break the potato pieces too aggressively.
Bring the milk to a gentle simmer and simmer the potatoes, covered, until soft: Bring the pot up to a very gentle simmer, and keep the heat low to prevent the milk from scorching at the bottom. Cover the pot so the steam cycles evenly and cooks the potatoes through, which usually takes about 10 minutes. You will know they are done when a fork slides through a cube with little resistance, and the broth has acquired a slightly thickened, clouded look from released potato starch. Stir once or twice to check and to keep the bottom from catching. Avoid boiling, which can separate the dairy and make the texture grainy.
Use a potato masher to mash some of the potatoes for a mixture of textures: After the potatoes are tender, lightly mash a portion of them in the pot to create a heartier, creamier body while leaving other pieces intact. The sound changes to a soft, muffled thud as the solids break down and the liquid becomes silkier. This is where you control consistency; mash more for a smoother chowder style or less for chunkier, rustic bites. A typical mistake is over mashing every potato, which yields a paste like texture rather than a soup with pleasant heft.
Stir in the cream and let it heat through for a minute: Add the cream and let the pot warm it gently so it integrates without curdling. The texture will instantly round out and become luxurious, with tiny steam wisps rising as everything harmonizes. Keep the heat low and stir to blend the cream fully into the broth. If the soup gets too hot too fast, the cream can separate, so patience is essential here.
Remove any skin and bones from the cooked smoked haddock and flake it into chunks: While the soup rests, take the poached smoked haddock and remove any residual skin and bones carefully, feeling for small fragments. Then use a fork to flake the fish into bite sized pieces. The texture should be delicate, moist, and flaky, with flecks of smoke visible in the white flesh. Leaving bones in will be unwelcome at the table, so double check. A common oversight is rushing this step and missing a small bone, so inspect thoroughly.
Add the smoked haddock to the soup and let it heat through for a minute or two: Fold the flaked smoked haddock gently into the simmering pot so the pieces warm through without falling apart. You will see the fish blend into the creamy matrix, lending strands of smoky flavor to every spoonful. Heat just long enough for the fish to reach serving temperature, as prolonged cooking can dry the flakes. Taste and adjust the salt and pepper now, because the fish and cooking liquids have married and the seasoning will be accurate at this stage.
Serve sprinkled with fresh parsley: When you ladle the soup into bowls, finish with a scattering of chopped parsley for a fresh, green contrast. The herb brightens the palate and provides a clean, leafy note against the smoky, creamy backdrop. Serve with bread or oatcakes for dipping if you like, and enjoy immediately while warm.