Preheat your oven to 350°F (175°C). Grease and lightly flour two loaf pans or two 9-inch round cake pans.
In a large mixing bowl, whisk together the flour, sugar, cocoa powder, baking powder, baking soda, and salt until evenly combined and free of lumps.
Add the eggs, milk, oil, and vanilla extract to the dry ingredients. Beat with an electric mixer on medium speed for 2–3 minutes until smooth and glossy. Scrape down the sides of the bowl as needed.
Reduce the mixer speed to low and carefully stir in the boiling water. The batter will be thin — this is what gives the cake its soft, moist crumb.
Step 2: Bake the Cake
Pour the batter evenly into the prepared pans, filling each about two-thirds full.
Bake for 30–35 minutes, or until a wooden toothpick inserted into the center of the cake comes out clean.
Remove from the oven and let the cakes cool in the pans for 5 minutes. Then transfer them to a wire rack to cool completely before frosting.
Step 3: Make the Chocolate Frosting
In a large saucepan, combine the evaporated milk, sugar, cocoa powder, water, and flour. Whisk until smooth and no lumps remain.
Place over low heat and cook, stirring constantly, until the mixture thickens to a glossy, pudding-like consistency. This process takes about 8–10 minutes. Stir gently along the bottom of the pan to prevent burning.
Remove from heat and stir in the butter until melted and fully incorporated. The frosting should be smooth, rich, and slightly pourable.
Allow the frosting to cool for a few minutes, just until it’s thick enough to coat the back of a spoon but still spreadable.