In a medium sized bowl, whisk together the corn starch and salt. Slowly add in two cups of the milk, making sure to mix thoroughly so there are no clumps. Then add the egg yolks and continue to mix well until everything is smooth and uniform.
In a medium sized saucepan set over medium-high heat, melt 3 Tablespoons of the butter. Keep an eye on it so it doesn't burn. Keep heating the butter until it starts to turn a golden brown color and you get little brown flecks. Your butter should get a nutty aroma.
Add in the brown sugar and mix until it is fully melted.
Once the sugar has melted, it will start to smoke a little bit around the edges. Take the saucepan off the heat and slowly add in the final cup of milk. Be careful, as it will splatter and bubble. Keep mixing and place the saucepan back on the stove. The hardened caramel will eventually melt. Do not stop stirring or else you may have clumps of caramel stuck to the bottom of your pan.
Once the caramel has melted, pour about half of this into your bowl with the corn starch and egg yolk mixture. Stir it well until everything is mixed together, and then pour everything back into your saucepan on the stove.
Keep whisking and stirring until the pudding thickens (this may take a few minutes). Once the pudding achieves your desired consistency, take the pan off the stove and whisk in the remaining 1 Tablespoon of butter and the vanilla.
Evenly distribute into 6 to 8 ramekins. Put a piece of plastic wrap directly on top of the pudding so it doesn't form a skin. Place in the refrigerator and let it cool for about 2 hours before serving.
If desired, you can garnish with butterscotch chips or whipped cream.
Leftover pudding should be stored, covered, in the refrigerator and will last a few days.Source: Bowl of Delicious