In a large saucepan over medium heat, bring the water and butter to a boil. Add all of the flour and stir until a smooth ball forms.
Remove saucepan from the heat; let stand for 5 minutes. Add the eggs, 1 at a time, beating well after adding each one. Continue beating until mixture is smooth and shiny.
Spread dough into a greased 13x9-inch baking dish.
Bake in preheated oven for 30-35 minutes or until puffed and golden brown. Let cool completely. To make the filling, add the cream cheese, milk and pudding mix to a large bowl and beat until smooth.
Spread filling over cooled puff and place in the fridge for 20 minutes.
Remove from fridge and spread thawed whipped topping on top; refrigerate again until serving.
Right before you serve this dessert, drizzle with the chocolate and caramel toppings.