My family loves this recipe. It does take some time to make, but it is well worth the effort. My boyfriend requests that I make this about once a month, sometimes more often. This recipe has quickly become a family favorite.
Preheat oven to 375. Grease or spray with cooking spray a 13X9 baking pan.
Dice the onion to whatever thickness you prefer, then slice potatoes thin to medium thin. Layer half the potatoes into the pan, half the onion, and half the ham over the potatoes. Layer the rest of the potatoes, onion, and top with the remaining ham.
In a medium saucepan, melt the butter or margarine over medium heat. Add the flour, one tablespoon at a time, stirring with a whisk constantly. Add the salt and pepper. When that is mixed, very slowly add the milk a little at a time, stopping to whisk the mixture and make sure it is thoroughly blended before adding more milk.
When all the milk is added, heat to a boil, stirring constantly. You will need to turn the heat up to medium high for this step. When the milk is at a boil, keep stirring and boil it for exactly one minute.
Turn stove off and pour mixture over the potatoes and ham.
Cover with foil and put in oven for one hour.
When one hour is over, take the foil off the pan and bake for another 30 minutes.
If you want to add cheese, when there is 10 min left, take out the pan and sprinkle with desired amount of cheese and then cook an additional 10 min.
Take out of oven when done and let stand for 10 minutes before serving. Enjoy!