Preheat oven to 175C and line a 9x9 inch baking dish with parchment paper or foil.
Cream the butter then add the sugar, salt and beat until light and fluffy. Add the vanilla and egg yolk then mix until combined. Add the flour in a few batches and mix until just combined.
Transfer to your prepared pan and press into an even layer then bake at 350F for about 22 minutes or until the edges are golden.
While the base bakes make the caramel. This is easiest with a candy thermometer but you don't need one. Combine the butter, brown sugar, salt, vanilla, sweetened condensed milk and either golden syrup or corn syrup.
Place over medium heat and whisk until melted and combined then continue whisking over the heat while the caramel bubbles and dakens to a richer color. Once it reaches 107C you'll see it starts to thicken and pull away from the edge, 5-6 minutes, your caramel is ready.
Pour onto the shortbread base, smooth to the edges creating a flat layer. Chill for about 10 minutes so the caramel sets.
Chop chocolate and melt with cream either in a double boiler or be microwaving in 2-3 20 second bursts, stirring in between. Pour the chocolate over the caramel and smooth into an even layer. Sprinkle with salt if desired then chill and cut into pieces.
PRO TIPS FOR MAKING THIS RECIPE
Make sure you line your baking dish and leave an overhang so it’s easy to remove.
Make sure you use room temperature butter it’s essential for making the shortbread!
A sugar thermometer is really helpful for making caramel but it isn’t essential.
When making the caramel make sure to stir it constantly so it doesn’t burn on the bottom.
You can use less chocolate on top if you’d prefer a thinner layer.
Make sure to chill the caramel layer before adding the chocolate or there’s a chance they will mix together and you won’t have even layers.
Sea salt really enhances the chocolate flavor in millionaire’s shortbread so try not to skip it.
I find it easier to cut the bars when they are chilled.