Make the Cake: Preheat oven to 325 degrees F. Lightly spray a 9x13-inch baking pan with non-stick cooking spray.
In a medium bowl, whisk together the flour, sugar, baking soda, and salt; set aside.
In a large saucepan, stir together the milk, chocolate, and cocoa powder. Place the saucepan over low heat and cook, whisking frequently, until the chocolate is melted and the mixture is smooth. Remove from the heat and cool for 5 minutes. Whisk the vegetable oil, eggs, and vanilla into the chocolate mixture until smooth and homogeneous (it may look curdled and separated at first, but keep whisking and it will come together!). Add the flour mixture and whisk until combined, making sure to scrape the corners of saucepan.
Pour the batter into the prepared pan; bake until firm in center when lightly pressed and a toothpick inserted in the center comes out with a few moist crumbs attached, 30 to 35 minutes, rotating the pan halfway through baking. Cool the cake completely in the pan on a wire rack before frosting, 1 to 2 hours.
Make the Frosting: While the cake is baking, combine the chocolate and cream in large heatproof bowl set over a saucepan filled with 1 inch of barely simmering water, making sure that water does not touch the bottom of the bowl. Whisk the mixture occasionally until the chocolate is uniformly smooth and glossy, 10 to 15 minutes. Remove the bowl from the saucepan. Add the butter, whisking once or twice to break up the pieces. Let the mixture stand for 5 minutes, then whisk until all of the melted butter is incorporated and the mixture is completely smooth. Refrigerate the frosting, without stirring, until cooled and thickened, 30 minutes to 1 hour.
Once cool, whisk the frosting until smooth. (Whisked frosting will lighten in color slightly and should hold its shape on whisk.) Spread the frosting evenly over top of cake. Cut the cake into squares and serve out of pan. (Leftover cake can be refrigerated in airtight container for up to 2 days.)
Notes
Bittersweet chocolate with 60% cacao is recommended for this recipe.
Using unsweetened cocoa powder instead of Dutch-processed cocoa powder will result in a drier cake.