Preheat your oven to 350°F (175°C). Grease a 9x13 inch baking pan.
In a large bowl, combine flour, sugar, cocoa powder, baking powder, baking soda, and salt.
In a separate bowl, mix vegetable oil, eggs, vanilla extract, milk, and sour cream until smooth.
Gradually merge the wet mixture into the dry ingredients, mixing until just combined.
Transfer the batter to the prepared pan, spreading evenly. Bake for 25-30 minutes or until a toothpick inserted comes out clean.
Immediately after removing the cake from the oven, scatter the mini marshmallows on top. Their slight melting will adhere them to the cake.
While the cake cools, prepare the frosting. In a saucepan, melt the butter, then incorporate milk and cocoa powder. Stir continuously until combined. Remove from heat and whisk in vanilla extract and powdered sugar until smooth.
Pour the warm frosting over the marshmallow layer. Let the cake cool completely before serving.