Preheat Oven: Preheat your oven to 350°F (175°C). Grease a 9x13-inch baking pan or line it with parchment paper.
Prepare Brownie Batter:
In a large mixing bowl, whisk together the melted butter and unsweetened cocoa powder until smooth and well combined.
Add the granulated sugar and mix well.
Add the eggs one at a time, beating well after each addition.
Stir in the vanilla extract.
Gradually add the all-purpose flour and salt, mixing until just combined. Do not overmix.
Bake Brownies:
Pour the brownie batter into the prepared baking pan and spread it out evenly.
Bake in the preheated oven for 25-30 minutes, or until a toothpick inserted into the center comes out with a few moist crumbs. Be careful not to overbake.
Remove from the oven and let the brownies cool in the pan on a wire rack.
Prepare Frosting:
In a medium mixing bowl, combine the softened butter, unsweetened cocoa powder, and milk. Beat until smooth and well combined.
Gradually add the powdered sugar, mixing until smooth and creamy.
Stir in the vanilla extract.
Frost Brownies:
Once the brownies are completely cooled, spread the frosting evenly over the top of the brownies in the pan.
Allow the frosting to set for at least 30 minutes before cutting into squares.