Freshly whipped cream and raspberries, for serving (optional)
Combine sugar, cornstarch, orange zest, cinnamon, and salt in a medium saucepan. Whisk until pieces of orange zest are thoroughly combined with the rest of the ingredients (you may need to use your fingers to really rub them in there).
Place over medium heat and slowly whisk in about a third of the half-and-half. Keep slowly pouring in the half-and-half, whisking continuously until all the half-and-half has been added and the mixture is smooth.
Slowly bring to a boil (this should take about 10 minutes. You want to give the cornstarch time to cook). When the mixture starts to boil, remove from the heat and stir in the chocolate and vanilla. Keep stirring until the chocolate is melted and the mixture is smooth.
Spoon into serving bowls and either serve warm or press small pieces of plastic wrap directly over the pudding and refrigerate until cold. Serve with hefty dollops of freshly whipped cream and raspberries.