Preheat the oven to 180°C / 350°F / Gas mark 4.
Grease and line a deep 23cm (9-inch) round cake tin (or a square tin if you prefer).
In a large bowl, whisk together the flour, sugar, cocoa, baking powder, bicarbonate of soda, and salt.
In a jug, whisk the oil, milk, yoghurt, eggs, and vanilla.
Pour the wet mixture into the dry ingredients and stir until just combined. Fold in the hot coffee.
Pour into the prepared tin and bake for about 35 minutes, or until a skewer comes out clean.
Leave to cool in the tin. Ideally you'll have baked it in a deep enough tin to build the dream cake on top so leave it in the tin. If you need to transfer it to another tin, you can do so once it's cooled. Don't worry if you need to cut it to reshape it a bit as it all gets covered later on anyway.
Once the sponge is completely cool, spread an even layer of caramel/dulce de leche directly over the cake in the tin.
Whip the double cream with the icing sugar until it forms soft peaks.
Spoon the cream over the caramel and spread gently to cover.
Heat the cream in a saucepan over medium heat until just steaming.
Pour over the chopped dark chocolate and leave for 2 minutes. Stir gently until smooth, then mix in the golden syrup and butter.
Let it cool slightly (it will melt the cream if too hot), then pour evenly over the cream layer. Place the tin in the fridge for at least 1-2 hours to set. It won't set into a hard layer, it will be thick and set but still easy to scoop.
Melt the remaining dark chocolate (using a heatproof bowl over simmering water, or in short bursts in the microwave).
Allow to cool just enough so it won’t melt the ganache, but is still pourable. You want it just warm, not hot.
Pour over the set ganache layer, tipping the tin so it coats evenly.
Chill again until the top is completely set and firm. Dust with cocoa powder then serve. Use a large spoon to crack the chocolate top and scoop out the delicious dream cake.
