In a medium saucepan, warm the heavy cream with the cocoa powder, whisking to blend cocoa.
Bring mixture to a boil, remove from heat and add in the semisweet chocolate. Stir until smooth. Then add 1 c. of whole milk, stirring until smooth. Pour mixture into a large bowl along with the vanilla extract. Set a mesh sieve over the bowl.
Warm the remaining milk along with the sugar and salt in the same saucepan.
In a separate bowl, whisk the yolks lightly. Slowly pour the warm milk, sugar and salt mixture into the egg yolks, whisking constantly, then pour the mixture back into the saucepan to cook.
Constantly stir the mixture over medium heat with a heat resistant spatula, scraping the sides and bottom. The mixture will begin to thicken and coat the spatula (it should also reach 170 degrees on a thermometer). Remove immediately and pour through the mesh sieve into the chocolate mixture.
Place the bowl over an ice bath to cool and then place in the refrigerator to chill thoroughly (approximately 30 min - 1 hour).
Pour mixture into ice cream maker according to the manufacturer’s instructions. Churn for 20-25 minutes. Meanwhile (towards the end of the churning process), chop the brownie into chunks and stir the fudge sauce till smooth.
Remove bowl from mixer, fold in the brownie chunks, then pour into an air-tight freezer safe container. Swirl the fudge throughout. Cover and freeze for 4-6 hours before serving.