Preheat your oven to 400°F (200°C) and line a baking sheet with parchment paper.
In a saucepan, combine water, butter, and salt. Bring to a boil over medium heat.
Add flour all at once and stir vigorously until the mixture forms a ball and pulls away from the sides of the pan.
Remove from heat and let it cool slightly. Then add eggs one at a time, beating well after each addition until the dough is smooth.
Transfer the dough to a piping bag fitted with a round tip. Pipe small mounds onto the prepared baking sheet, leaving space between each.
Bake for 20-25 minutes until profiteroles are puffed and golden. Pierce each with a toothpick to release steam and let them cool.
For the vanilla custard, heat milk in a saucepan. Whisk egg yolks, sugar, and cornstarch in a bowl. Slowly pour the hot milk into the egg mixture while whisking continuously. Return to the saucepan and cook until thick. Stir in vanilla extract.
For the chocolate sauce, heat the cream until almost boiling. Pour over chopped chocolate in a bowl and let it sit for a minute. Stir until smooth.
To assemble, cut the profiteroles in half. Fill each with vanilla custard or whipped cream, then replace the top. Drizzle with chocolate sauce.
Serve the profiteroles immediately and enjoy!