In a large bowl, combine ham, potatoes, and onion.
In a medium saucepan, melt butter over medium heat. Stir in flour until smooth. Gradually stir in milk, salt, and pepper. Bring to a boil, stirring constantly. Boil for 1 minute, or until thickened. Remove from heat and stir in 1 cup of cheese.
Pour cheese sauce over ham and potato mixture and stir to combine. Pour into a 9x13 inch baking dish.
Bake for 30 minutes, or until potatoes are tender. Sprinkle with remaining 1 cup of cheese and bake for an additional 5 minutes, or until cheese is melted.
Interesting Facts
This casserole is a great way to use up leftovers.
You can use any type of cheese you like in this dish.
This dish can be frozen and reheated for an easy meal.