In a medium saucepan, whisk together the whole milk, granulated sugar, egg yolks, and cornstarch. Stir until the mixture is smooth and no lumps remain.
Place the saucepan over medium heat and cook, stirring constantly, until the mixture begins to thicken and bubble, about 8-10 minutes. Make sure to keep whisking to prevent the custard from burning or clumping.
Once the pudding has thickened to a creamy consistency, remove it from the heat. Stir in the butter and vanilla extract until fully incorporated.
Pour the vanilla pudding into the baked pie crust, spreading it out evenly.
Allow the pie to cool at room temperature for about 10 minutes, then transfer it to the refrigerator to chill for at least 1 hour, or until the pudding is fully set.
Once the pie has chilled and the pudding is firm, top the pie with whipped cream, spreading it in an even layer over the pudding.
Notes
Pie crust ideas: You can use your favorite. A store-bought pie crust or homemade pie crust both work. An Oreo crust or graham cracker crust would be tasty too. You can even make it in mini pie shells or bite-size phyllo shells. Other flavors to try: Feel free to change up the flavor of this pie by using a different instant pudding mix, including:
Chocolate
Butterscotch
Lemon
Lime
Strawberry
Topping ideas: The garnishes for this pie are totally optional but SO fun! You can mix things up based on the season or to match the kind of pudding you used.