Preheat the oven to 150C. Line a 23cm/9in square cake tin with baking parchment.
Combine the flour and butter cubes in a food processor and pulse until the mixture resembles fine breadcrumbs. Add in the caster sugar.
Tip the mixture into the lined cake tin and spread it out evenly with the back of a spoon. Then press the shortbread down firmly with your knuckles so that it is tightly packed in the tin.
Bake the shortbread for 30 minutes or until very light golden brown. Set aside to cool.
Meanwhile, for the topping, heat the butter, condensed milk and golden syrup in a saucepan, stirring occasionally until the butter is melted and the mixture is smooth.
Increase the heat and bring the mixture to the boil, stirring frequently. The caramel will thicken and turn golden-brown. Set aside to cool slightly, then pour over the cooled shortbread. Allow to cool completely.
Melt the chocolate in a bowl set over a pan of simmering water (ensure that the bottom of the bowl does not touch the water), stirring occasionally. Pour the melted chocolate over the caramel and set aside until the chocolate has cooled completely.
Cut into squares and serve.
For the shortbread:
225g plain flour
175g unsalted butter, cold, cut into cubes
75g caster sugar
For the topping:
1 x 379g can condensed milk
100g golden syrup
350g dark chocolate, or a mixture of dark and milk, chopped into small pieces