Preheat the oven to 350°F (175°C). Line a 9x9-inch square baking pan with foil, leaving overhang on the sides, and spray generously with cooking spray.
In a large bowl, stir together melted butter and sugar until smooth. Add eggs one at a time, mixing well after each addition, then stir in vanilla extract.
Mix in cocoa powder, salt, and flour until a smooth batter forms.
Pour the batter into the prepared pan and spread evenly. Bake for 22–25 minutes, until a toothpick inserted near the center comes out with moist crumbs. Cool completely.
To make the mousse, combine marshmallows, chopped chocolate, and milk in a saucepan over low heat. Stir frequently until fully melted and smooth. Remove from heat and cool for 15–20 minutes.
Whip heavy cream until stiff peaks form. Gently fold the cooled chocolate mixture into the whipped cream.
Spread the mousse evenly over the cooled brownies. Refrigerate for at least 1 hour to set.
Drizzle with chocolate ganache if desired before serving.