Preheat your oven to 180 C, grease and line three 7 inch round cake pans (you may also use two pans, I wanted three layers so I used 3 pans). Set aside.
In a large bowl, cream the butter, sugar, and vanilla for about 5-6 minutes until light and fluffy
Add the eggs one at a time, mixing after each addition.
Sift your dry ingredients in a separate bowl, measure out your milk and yogurt.
Add 1/3rd of the dry ingredients into the butter mixture and mix gently. Now add the milk and blend well.
Add another 1/3rd of the dry ingredients and mix gently, followed by the yogurt and end with the remaining flour mixture. Mix till you don't see any dry ingredients.
Transfer the batter evenly to the cake pans and bake for 30-50 minutes (the time varies on the number of pans you are using, if you use two pans it may take up to 50 minutes so keep an eye on it.) The cake will be ready when it slowly starts to pull away from the edges of the pan and a toothpick inserted in the center will come out clean.)
Once baked, let the cakes cool inside the pan on a wire rack before removing.
Chop the chocolate and put it in a heat medium sized bowl.
Heat the cream, bring it up to a simmer and pour it over the chopped chocolate. Let it sit for 2 minutes and with a whisk, blend everything well. Set aside to cool completely.
Add all the ingredients for the buttercream in a large mixing bowl and whip until light and fluffy and airy.
Once the cakes have cooled, level them and sandwich the layers with the ganache, then cover the whole cake with the buttercream. I covered mine in rosettes.
Refrigerate for 15 minutes before serving if you live in a hot climate.