Preheat oven 350 degrees. Grease with butter a 9x9" baking pan.
In bowl of electric mixer, cream the butter and sugar until light and fluffy. Beat in the vanilla extract. Add flour and salt and beat until the dough just comes together. Press onto the bottom of a greased pan. Bake about 20 minutes or until pale golden in color. Remove from oven and place on rack to cool.
Pour the can of sweetened condensed milk into a heatproof bowl and place bowl over a saucepan of simmering water. Cover and cook, over low heat, stirring occasionally, for 60 to 90 minutes or until the milk has thickened and has turned a caramel color. Remove from heat and beat until smooth. Pour the caramel over the baked shortbread and leave to set.
(Microwave method: Place sweetened condensed milk in a large microwaveable bowl and cook on medium power for about 4 minutes, stirring halfway through baking time. Reduce the power to medium-low and continue to cook for another 8 - 12 minutes, or until the milk has thickened and turned a light caramel color. Remove from microwave and beat until smooth).
Melt chocolate and butter either in the microwave oven or in a heatproof bowl set over a saucepan of simmering water. Pour the melted chocolate evenly over the caramel and leave to set. Cut the shortbread in to pieces using a sharp knife.
Store cut bars in refrigerator to keep chocolate firm. Chilled chocolate doesn't cut clean.