Preheat the Oven: Preheat your oven to 400°F (200°C). Line a baking sheet with parchment paper.
Cook the Dough: In a medium saucepan, combine water, butter, sugar, and vanilla extract. Bring the mixture to a boil over medium heat. Lower the heat and add the flour all at once, stirring continuously until the dough pulls away from the sides and forms a ball, about 2 minutes.
Incorporate the Eggs: Remove the pan from the heat and let the dough cool for 5 minutes. Gradually add the eggs, one at a time, mixing thoroughly after each addition, until the dough becomes smooth and glossy.
Shape the Puffs: Use a spoon or piping bag to drop small mounds (about 1½ inches wide) of dough onto the prepared baking sheet, spacing them 2 inches apart.
Bake: Bake for 20–25 minutes, or until golden brown and puffed.
Prepare the Filling: In a bowl, whisk together heavy cream, whole milk, and instant vanilla pudding mix. Use an electric mixer on medium-high speed to beat the mixture until it thickens and becomes creamy.
Stuff the Puffs: Cut each puff in half horizontally or carefully create a small opening at the bottom. Fill each puff with the vanilla cream, either by piping or spooning it in.
Finish with Powdered Sugar: Dust the tops of the filled cream puffs with powdered sugar for a beautiful finishing touch.