Combine the cream, milk and piment d'espelette in a medium saucepan over medium-high heat. Heat until the mixture just starts to bubble around the edges. Reduce the heat to low and cook for 15 minutes to infuse the liquid with the piment. Strain through a fine-mesh sieve and return to the saucepan.
Whisk together the sugar, cocoa, cornstarch and salt in a medium bowl, making sure there are no lumps; gradually whisk into the liquid. Cook over medium heat, whisking constantly, until the starting to bubble and thicken, 3 to 4 minutes. Reduce the heat to medium low and add the butter; whisk until melted. Add the vanilla and chocolate and continue to whisk until the chocolate has melted and the mixture is thick and smooth, 2 to 3 minutes more.
Transfer the pudding to a medium bowl or individual pots. Let cool for 15 minutes, then cover with plastic wrap and refrigerate for at least 4 hours or preferably overnight.
To serve, top with some creme fraiche and a sprinkling of piment d'espelette if desired.
The pudding can be made up to two days in advance. I prefer to make it one day in advance so the chile flavor mellows a bit. This is a great pudding for serving in espresso cups.