Heat frying pan on medium/low heat, and melt vegan butter.
Take the heat to low and add rice flour. Stir and cook for 2-3 minutes until the "batter" is boiling.
In a small bowl, combine ½ cup of milk and cornstarch. Add it to the pan and stir until combined.
Add the next ½ cup of milk and stir until combined. You must go in small batches to ensure you get a smooth sauce. Go until you run out of milk. (Troubleshooting tips in the Notes section below.)
Add salt, nutmeg, and white pepper when the sauce has thickened. Stir to combine.
Video
Notes
Secrets to a perfect vegan bechamel sauce
Cook it on low heat -> You can start on medium until the butter is melted, then turn the heat low. If I make a larger batch, I even take it off the heat initially.
Add milk in batches -> I usually go with ½ cup at a time.
Use a whisk -> I always use a silicone whisk, as I found it foolproof to make the white sauce lump-free.
Add seasoning at the end ->If the sauce is not thick enough or too thick, you need to adjust the flour and the milk amounts (see notes below). If you add salt, pepper, and nutmeg only at the end when the sauce reached the right consistency, you can be sure that the sauce will not turn out to be too salty or too peppery.
Troubleshooting tips
Not thick enough? -> Add more flour but make sure you first dissolve it in a bit of milk. Like 1 Tbsp flour or starch - 2 Tbsp milk. Alternatively, you can take it off the heat, wait for it to cool a bit, and add flour or starch directly to the sauce and stir vigorously with a whisk to avoid any lumps. Note: The sauce will thicken a bit more when it is cooling down.
Too thick? -> Add more milk, like ¼ cup at a time.
How to get rid of lumps? -> Strain the sauce through a fine-mesh sieve before adding more milk.