Preheat oven to 350°F. Generously grease a 9-inch by 13-inch baking dish with butter or coat it with nonstick cooking spray.
In a medium pot, mix milk and salt and bring to a boil. Stirring constantly, pour in grits, bring to a boil, and turn down heat. Continue stirring until grits begin to thicken. Remove from heat and stir in butter until melted.
In a large bowl, scramble eggs. Mix in cheese, ham, and grits. Pour into prepared baking dish and bake in preheated oven for 45 minutes or until puffy and golden brown. Serve warm.
If using whole or 2% milk, you may substitute water for 1 cup of the milk, if desired. If using skim milk, go ahead and use all milk.
To prepare this casserole ahead of time, bake it, allow it to cool, cover, and refrigerate overnight. In the morning, bring casserole to room temperature, cover it with foil, and bake at 350°F for 15 minutes to reheat.
You may also bake this casserole, cool, cover tightly, and then freeze it for up to 1 month. Defrost casserole overnight in the refrigerator, bring it to room temperature, and then reheat it in the oven as indicated above (350°F for 15 minutes).