Make the pudding first, since it will need to chill for up to three hours. Chop the bittersweet chocolate into fine flakes with a serrated knife.
In a large, heat-proof bowl, whisk together the cocoa, corn starch and salt. Gradually add the cream, whisking as you go until it's smooth. Whisk in the egg yolks.
In a 3-quart or larger saucepan, add the milk. Stir in the brown sugar and warm it over medium heat. Bring the pot to a simmer. You will see tiny bubbles covering the surface of the liquid.
When it has reached a simmer, pour most of the hot liquid into your bowl with the cocoa and corn starch mixture. Whisk until it is blended well. This will temper the eggs, so they don't scramble.
Pour everything from your bowl back into the pot and increase the heat to medium high. Whisk constantly as you bring the pot to a full boil. The pudding will be thicker.
Cook the boiling pudding for two minutes, whisking constantly and vigorously, making sure to reach the corners of your pot.
Remove the pudding from the heat and stir in the vanilla. Add the chopped chocolate and whisk the pudding well until the chocolate is blended.
To chill the hot pudding more quickly, spread it evenly onto a sheet pan with sides. Cover the entire surface of the pudding with wax paper, pressing it onto the pudding to prevent skin from forming. Let the pudding cool off for a bit in the pan before refrigerating it for three hours. (You can check it after 1 ½ hours to see if it's ready.)
While the pudding is chilling, make the brownie crust. Preheat your oven to 350 degrees F. Grease a 9-inch or 10-inch pie dish with cooking spray or butter. (The 9-inch pie dish will give you a taller pie, which looks nicer.)
In a glass bowl or other microwaveable bowl, add the 4 ounces of semi-sweet chocolate and the butter. Heat this, covered, in the microwave for 1 minute and 50 seconds, or until the butter is melted. Stir to combine.
Whisk in the sugar and salt. Then whisk in the eggs and vanilla. Finally, whisk in the flour.
Transfer the brownie batter to your pie dish and bake it for 20 minutes, or until a cake tester or toothpick inserted in the center of the brownie comes out with fudgy crumbs. Don't over bake it. Let the brownie crust cool on a wire rack.
To make the whipped cream, beat the whipping cream and confectioners sugar with a mixer in a clean, medium stainless steel or glass bowl, until the cream is about half way to being stiff. Add in the vanilla extract and continue beating until stiff peaks form. Refrigerate the whipped cream until the pudding is chilled enough to assemble the pie.
To assemble the pie, make sure the brownie crust is at room temperature. Add the chilled pudding on top of the brownie crust. Top the pudding with the whipped cream.
To make chocolate curls or flakes for the garnish, use a vegetable peeler to peel along a straight edge of your chocolate square. Make as many curls/flakes as you wish and scatter them on top of the pie.
Refrigerate the pie for at least an hour before serving, to allow it to set. Then store the pie in the refrigerator for up to three days, covered with a domed bowl or domed foil so that it doesn't touch the whipped cream topping. I don't recommend freezing this pie.
The prep time listed does not include chilling time. I chill the pudding for three hours, but you can check it after about 90 minutes. It helps to spread the pudding onto a sheet pan to allow it to chill faster. Press wax paper on top of the pudding to prevent skin forming.
I also recommend chilling the pie for at least an hour after you assemble it, to allow it to set before you serve it.
Store the pie in the refrigerator for up to three days and always serve it chilled.
Using Instant Pudding - If you’d rather not use homemade pudding, you can make two (3.9-oz) boxes of instant chocolate pudding instead.