Pour 4 quart of milk into a large pot. Place on the stovetop over medium-low heat. Sprinkle sugar and salt over the top. Do not stir. Heat to boiling.
Whisk together the eggs and cornstarch. Add 1 c. of milk and whisk until smooth and creamy.
In a cup or small bowl, mix gelatin and cold water. Set aside.
Once your milk is getting hot, you will want to keep your eye on it, because when it comes to the boiling point it will begin to rise. When the milk begins to rise, turn off the burner and slowly pour in your egg/cornstarch mixture, whisking as you are pouring.
Remove from the burner and add the gelatin mixture, butter, and vanilla. Whisk until the gelatin is dissolved and the pudding is creamy-looking.
Cool. To avoid having a skin form on the top, place a piece of plastic wrap on top of the pudding.
Cool completely and add cool whip or whipped cream, if desired. It makes it more creamy.