In a medium saucepan, combine the milk, cream, and half of the sugar. Heat over medium heat until steaming but not boiling.
In a separate bowl, whisk the egg yolks with the remaining sugar until smooth and pale.
Slowly pour a small amount of the warm milk mixture into the yolks while whisking constantly. Gradually add more until fully incorporated.
Return the mixture to the saucepan and cook over low heat, stirring continuously, until the custard thickens slightly and coats the back of a spoon.
Remove from the heat and whisk in the chopped dark chocolate, cocoa powder, vanilla extract, and salt until completely smooth.
Allow the mixture to cool slightly, then cover and refrigerate for at least 4–6 hours or overnight.
Pour the chilled mixture into an ice cream maker and churn according to the manufacturer's instructions until thick and creamy.
Transfer the gelato to a freezer-safe container and freeze for 2–3 hours until scoopable.
Let the gelato sit at room temperature for 5–10 minutes before serving for the best texture.