In a medium saucepan, combine the cornstarch and salt. Slowly whisk in the whole milk then the sweetened condensed milk until thoroughly combined.
Heat the mixture over medium heat, whisking constantly and scraping sides and bottom of saucepan.
When mixture begins to thicken a bit, add about 1 cup of it to the egg yolks. Mix well and then add the egg mixture back to saucepan.
Cook, stirring constantly, until thickened.
Strain the pudding through a fine-mesh strainer into a bowl, scraping with a rubber spatula to pass the pudding through. (I know this is an extra step, but it removes any bits of cooked egg, so the pudding is smooth.).
Stir the butter and vanilla into the pudding until the butter is melted.
To prevent a skin from forming, press a piece of plastic wrap directly on the surface of the pudding or you can dust it with a little bit of cinnamon and put some raisins on top like my mom does. Refrigerate until set, about 3 hours.