Prepare the Wet Mixture: In a bowl, whisk milk, cream, cornstarch, and egg yolks until smooth. Set aside.
Make the Butterscotch Base: In a saucepan, melt the butter over medium heat. Add brown sugar and stir until the mixture becomes bubbly and smooth, about 2–3 minutes.
Combine the Mixtures: Slowly whisk in the milk mixture. Stir continuously to avoid lumps.
Cook Until Thickened: Continue cooking for 5–8 minutes until the pudding thickens and coats the back of a spoon.
Add Vanilla and Salt: Remove from heat and stir in vanilla and a pinch of salt.
Strain (Optional but Recommended): Strain the pudding through a fine sieve to ensure a silky-smooth texture.
Chill the Pudding: Pour into serving cups, cover with plastic wrap (touching the pudding to prevent skin), and refrigerate for at least 2 hours.
Prepare Whipped Cream: Beat heavy cream, powdered sugar, and vanilla until fluffy.
Serve: Add a dollop or swirl of whipped cream over each pudding cup.