Preheat the oven to 160 C. Line a 9x5 loaf tin with baking paper, leaving an overhang for easy removal. Set aside.
In a microwave or double boiler, melt the chocolate and stir until smooth. Set aside to cool slightly.
In a mixing bowl, beat the butter and cream cheese together on medium speed with a hand mixer, until smooth. Add the sugar and beat again to combine. Now add the yoghurt and vanilla and beat briefly once more.
Add the eggs one at a time, beating on low speed until combined, but do not over beat.
Stir in the melted chocolate and mix gently to combine.
Now sift in the flour, cocoa, baking powder and salt. Use a spatula to fold it in gently, till the flour is no longer visible and the batter is thick and smooth. If you have trouble mixing it, stir in a tablespoon of milk. Do not over mix the batter or your cake will turn out dense
Pour into the prepared baking tin, smoothen the top and bake for 1 hour until a toothpick poked in the center comes out clean. Start checking for doneness at about 45 minutes since ovens vary, and cover the top loosely with foil if it's browning too soon.
Let the cake cool in the tin for 10 minutes, then use the paper overhang to lift it out and place on a wire rack to cool completely. Slice into pieces and dig in!
Store in an airtight tin at room temperature for 4 to 5 days, and in the fridge for about a week, reheating pieces before eating for the best texture. Happy baking!