Make the Cream Puffs:
- Preheat your oven to 400°F (200°C) and line a baking sheet with parchment paper.
- In a medium saucepan, combine water, butter, and salt. Bring to a boil over medium heat.
- Reduce the heat to low and add the flour all at once. Stir vigorously until the mixture forms a ball and pulls away from the sides of the pan.
- Transfer the dough to a mixing bowl and let it cool for 5 minutes.
- Add the eggs one at a time, beating well after each addition until the dough is smooth and glossy.
- Using a piping bag or spoon, drop mounds of dough onto the prepared baking sheet, spacing them about 2 inches apart.
- Bake for 25-30 minutes, or until golden brown and puffed. Let cool completely on a wire rack.
2. Make the Custard Filling:
- In a medium saucepan, whisk together milk, sugar, and cornstarch. Heat over medium heat, stirring constantly, until it begins to thicken.
- In a separate bowl, whisk the egg yolks. Gradually add a small amount of the hot milk mixture to the yolks to temper them, then pour the yolk mixture back into the saucepan.
- Continue to cook while stirring until the custard is thick and coats the back of a spoon.
- Remove from heat and stir in vanilla extract and butter. Let cool completely, then chill in the refrigerator.
3. Assemble the Cream Puffs:
- Slice each cream puff in half and fill with chilled custard using a piping bag or spoon.
- Replace the tops of the cream puffs and dust generously with powdered sugar.