In a heavy saucepan, melt butter over medium heat. Add flour and stir, forming a roux. Slowly add warmed milk, 2-3 tablespoons at a time at first, whisking vigorously. Once milk is absorbed, add more, and continue until all the milk is in, and you have a thick sauce.
Add the onion, bay, clove, and nutmeg, reduce heat to low, and simmer for 15-30 minutes, stirring occasionally
Adjust consistency with more milk if necessary, add salt and pepper, and strain through a fine mesh strainer. Use immediately, or cover with plastic wrap pressed directly on the surface to prevent a skin from forming. Bechamel can be refrigerated for use 2-3 days ahead.