Preheat your oven to 350°F (175°C) and grease your cake pans. Line the bottoms with parchment paper for easy removal later.
In a large bowl, whisk together the dry ingredients: flour, cocoa powder, baking powder, baking soda, and sugar.
In a separate bowl, whisk together the wet ingredients: oil, milk, eggs, and vanilla extract.
Gradually add the wet ingredients to the dry ingredients, mixing until just combined. Don’t overmix!
Divide the batter evenly between your prepared cake pans. Bake for 30-35 minutes, or until a toothpick inserted into the center comes out clean.
While the cakes cool, whip up the peanut butter frosting! In a bowl using an electric mixer, cream together the softened butter and peanut butter until smooth.
Gradually add the powdered sugar, then the milk and vanilla extract, until you reach a light and fluffy consistency.
Once the cakes have cooled completely, it’s frosting time! Place one cake layer on a serving plate or cake stand. Spread a generous layer of peanut butter frosting on top.
Top with the second cake layer, then frost the entire cake with the remaining frosting. For a professional touch, you can use a frosting spatula to create a smooth finish.
Here comes the best part – the chocolate ganache (optional)! Heat the heavy cream in a saucepan over medium heat until simmering.
Remove from heat and pour over the chopped chocolate. Let it sit for a few minutes, then whisk until smooth and glossy.
Pour the ganache over the top of the frosted cake, letting it drip down the sides.