In a large saucepan add the milk, sugar, cornstarch, salt, egg and egg yolk.
Continuously whisk over medium-high heat until thick and it starts to bubble. Don't rush this process - it may take some time.
Remove mixture from heat then whisk in butter and vanilla extract until butter is melted.
Place plastic wrap over the top of pudding making sure it touches pudding to prevent a film from forming as it cools. Then put in refrigerator until fully chilled
Top with whipped topping, if desired.
Video
Notes
I use 2% milk for this recipe but you can use 1% or even skim milk as well. It is very versatile.
This takes time to thicken up, don't be nervous that it is not thickening right away. Don't be tempted to turn the heat up high to make it go faster.
This pudding makes a great base recipe for other pudding flavors as well as for pies. All you have to do is use different flavored extracts to change up the flavors.
Double this recipe if you want to serve more people or to have some extra on hand to eat for later.