Gather the ingredients.
Preheat the oven to 350 F. Line a 9-x 9-inch baking pan with parchment paper.(Alternatively, you can simply grease the pan, but parchment paper allows for easier release and clean-up.)
Combine the butter and chocolate in a large heatproof bowl. Melt over a double boiler on medium heat, stirring occasionally, until smooth, about 4 to 6 minutes. Remove from the heat.(Alternatively, you can microwave in a smaller heatproof bowl in 15-second increments, stirring between each increment, until fully melted; transfer to a large bowl.)
Stir in the cocoa powder and sugar until smooth. Let the mixture cool slightly, about 2 minutes.
Whisk in the eggs, vanilla, and salt until combined and smooth.
Slowly fold in the flour in 3 increments until you can no longer see streaks of dry flour. Be careful to not overmix.
Reserve 1/3 cup of the brownie batter and set aside. Pour the remaining brownie batter into the prepared pan.
Beat the cream cheese and sugar together using an electric mixer until it is light and fluffy. (You can hand whisk if you like, but make sure to whisk enough so that air is incorporated into the mixture.)
Stir in the egg and vanilla until fully incorporated.
Dollop the cheesecake filling all over the brownie batter in the pan. Then, dollop the reserved brownie batter all over the top.
Use a toothpick or the tip of a knife to swirl the batters together, creating a marbled design. Make sure to dip deep enough that it swirls throughout.
Bake the brownies until the center is mostly set and a toothpick inserted 2 inches from the side of the pan comes out with only a few fudgy crumbs, about 35 minutes. The center should be set and not wiggly when you give the pan a shake.
Let the brownies cool in the pan, then refrigerate for at least 1 hour before slicing. Enjoy warm for a melty chocolate bite or cold for a fudgier slice.