Heat the milk and cream. Add the heavy cream and milk to a medium-sized saucepan and bring the mixture to a simmer over medium heat. Whisk occasionally until it just starts to steam with bubbles along the edges, then remove the saucepan from heat.
Whisk together the eggs, sugar, and cornstarch. In a large mixing bowl or the bowl of a stand mixer with a whisk attachment, on high speed, whisk together the egg yolks, sugar, and cornstarch for 2-3 minutes. The texture should be light and fluffy with a pale lemony color. Make sure to scrape the bottom of the bowl. Turn off the mixer and grab the saucepan.
Temper the eggs. Turn the mixer to low speed, and slowly pour the steamed milk into the bowl. You want to add this very slowly to ensure the egg yolks don’t scramble. If whisking by hand, pour a slow stream and whisk continuously.
Add everything to the saucepan. Once all the milk is added, return the mixture to the saucepan and place on the stove over medium-high heat.
Thicken the pastry cream. Whisk constantly for 2-3 minutes until the pastry cream has thickened and is slowly boiling. The custard should reach around 190°F. Stir in the vanilla extract, salt, and cold butter. Cook for another 30 seconds, whisking constantly, then turn off the burner.
Chill the custard. If you are worried about pieces of cooked egg, you can run the custard through a fine mesh strainer. Pour the custard into a glass bowl. Allow the mixture to sit for 5 minutes at room temperature. If the butter splits give the custard a quick stir to blend it back in. Cover the bowl with plastic wrap, lightly pressing the plastic against the top surface to prevent skin from forming. Refrigerate for 3 hours (or up to 24 hours before serving).