Preheat the oven to 300 degrees F.
For the chocolate custard: Place the egg yolks, whole eggs and sugar in a medium bowl. In a medium saucepan, heat the cream over medium heat until hot, but not boiling. Gradually whisk the hot cream into eggs, then stir in the chocolate until melted. Pour the custard mixture through a fine-mesh sieve. Place the challah in a large bowl; pour the custard over and set aside.
For the chocolate toffee: Line a large rimmed baking sheet with a nonstick silicone mat. In a large skillet, combine the sugar, butter and cream. Cook over medium heat, swirling the contents in the pan, until a dark caramel color, about 10 minutes. Remove from the heat and set aside to cool slightly, 2 minutes. Pour the toffee into the prepared baking sheet; let cool completely. Pour the melted chocolate over the toffee; refrigerate until set, about 10 minutes. Break the toffee into pieces. Add half of the toffee to the bread mixture.
Stir 1 1/2 cups marshmallows and the chopped bittersweet and semisweet chocolates into the bread mixture. Butter a 9 by 13-inch baking dish and transfer the bread mixture to the baking dish. Fill a large roasting pan with 1 inch of boiling water, then add the baking dish. Bake until the custard is just set, about 1 hour. Before serving, sprinkle the remaining toffee and 1/2 cup marshmallows on top.
To serve, spoon the bread pudding onto plates and sprinkle with crumbled graham crackers.
This recipe was provided by a chef, restaurant or culinary professional. It has not been tested for home use.