In a saucepan, whisk milk, sugar, cocoa powder, cornstarch, and salt. Cook over medium heat, whisking constantly, until thickened and bubbling (10 minutes).
Remove saucepan from heat and pour mixture through a fine mesh strainer into the bowl with chocolate.
Let sit for a minute, then whisk until smooth and combined.
Stir in vanilla extract and butter until melted and incorporated.
Divide mixture evenly among 4-6 serving dishes. Cover with plastic wrap, touching the surface of the budino.
Refrigerate for at least 2 hours, or until set.
Remove plastic wrap, add optional toppings, and serve.