Chill your tools. Place your mixing bowl and beaters in the fridge for 10 minutes. Cold tools help the cream whip faster and hold better.
Make the pudding. In a large bowl, whisk the instant vanilla pudding mix with cold milk for 2 minutes until thick.
Stir in 1/2 teaspoon vanilla if using. Let it sit for 5 minutes to set.
Whip the cream. In the chilled bowl, beat the heavy cream with powdered sugar and a splash of vanilla until soft-to-medium peaks form. Don’t overbeat; you want fluffy, not grainy.
Lighten the pudding. Fold half of the whipped cream into the pudding with a spatula.
This makes the filling extra silky. Reserve the remaining whipped cream for topping.
Prep the bananas. Slice the bananas just before assembling to keep them fresh. If you’re worried about browning, lightly toss slices with a little lemon juice (go easy to avoid tartness).
Start layering. Add a layer of broken vanilla wafers to the bottom of each cup.
Top with a generous spoonful of pudding.
Add bananas and caramel. Place a layer of banana slices over the pudding. Drizzle a thin ribbon of caramel on top. Don’t overdo the caramel—a little goes a long way.
Repeat the layers. Add more wafers, another layer of pudding, and more bananas. Finish with a final spoonful of pudding to seal in the fruit.
Top it off. Pipe or spoon the reserved whipped cream on top.
Drizzle with caramel and add a small cookie or banana slice for garnish.
Chill before serving. Cover and refrigerate for at least 1 hour (and up to 24 hours). The cookies will soften and the flavors will meld.