
Preheat oven to 350℉ (175℃). Lightly grease a 9x13-inch baking pan.
In a medium mixing bowl, sift flour, sugar, cocoa powder, baking powder, baking soda, and salt. Set aside.
In a large mixing bowl, mix oil, eggs, vanilla, milk, and sour cream until thoroughly combined with an electric mixer, being careful not to overmix. (Overmixing overdevelops the gluten, resulting in a dense, chewy cake.)
On low speed, carefully add the boiling water. Beat the batter on high speed for one minute to create air bubbles. Add the dry ingredients to the wet ingredients and mix until fully combined.
Pour the batter into the prepared cake pan and bake for 30 minutes. Toothpick test to see if the cake is done. If the toothpick comes out clean, it's done.
Remove the cake from the oven, spread the mini marshmallows over the top, and return it to the oven for 2 minutes or until the marshmallows slightly melt. Remove from oven and allow to cool completely.
In a small saucepan, melt the butter. Using a wooden spoon, gradually add heavy cream and cocoa powder. Cook for about 2 minutes, stirring constantly.
Remove from heat and mix in the vanilla and powdered sugar with an electric mixer. Beat until smooth. Immediately drizzle over the cooled cake, and refrigerate for 25-30 minutes or until the frosting sets.