Preheat the oven to 350°F (177°C) and line a 9x9-inch (23x23cm) brownie pan with parchment paper. Set aside.
In a large mixing bowl, whisk the peanut butter, powdered sugar, and melted butter until smooth and combined. Set aside.
Place the chocolate and butter in a microwave-safe bowl and heat until melted. Stir every 15-20 seconds to prevent the chocolate from overheating and burning. Remove the bowl from the microwave, add the cocoa powder and stir until combined. Let rest for 5 minutes.
In a large mixing bowl, beat the eggs, sugar and vanilla for about 2-3 minutes until frothy. Add the chocolate mixture and whisk to combine. Then add the flour and salt and stir just to combine.
You can assemble the brownie batter and peanut butter filling in two ways, filled or swirled. Either pour half of the brownie batter into the pan and cover the bottom, then add the peanut butter filling and top with the remaining brownie batter. Or you can alternate spoon dollops of peanut butter filling and chocolate brownie batter into the pan and draw a swirl.
Bake for 15 minutes. Then, remove the brownies from the oven and let them cool for 10 minutes. Turn the pan around, return to the oven, and bake for another 15-20 minutes, or until a toothpick comes out slightly dirty with a few crumbs attached.
Remove from the oven and let cool in the pan until firm enough to lift them out of the pan without breaking them, about 45-60 minutes. Then transfer to a cooling rack and let cool completely.
Cut into squares and serve. Store leftovers in an airtight container for up to 4 days or freeze for up to 3 months.