Melt the butter in a large pan and cook the leeks and onion gently for 10 minutes until soft and translucent. Do not let them brown.
Add the potatoes and stock, bring to the boil, then reduce the heat and simmer for 15-20 minutes until the potatoes are completely tender.
Blend the soup with a stick blender or in a food processor until smooth and silky.
Stir in the milk and season generously with salt and pepper. Reheat gently without boiling.
Serve scattered with chives or spring onion if you have them, with crusty bread on the side.