Melt the butter and stir in the flour. Cook gently for 2 or 3 minutes without burning.
Put the remaining ingredients in a separate pan, bring the milk to the boil, then remove from the heat and leave to stand for 5 minutes. Strain.
Pour the milk into the flour and butter over a low heat, stirring with a whisk. Simmer gently for 20 minutes, whisking occasionally until you have a thick creamy sauce.