Preheat the oven to 150°C, gas mark 2. Tip the hazelnuts onto a baking tray. Roast for 8-10 minutes, until golden. Roughly chop.
Melt half the chocolate in a heatproof bowl set over a pan of barely simmering water. Dip the rim of each waffle cone into the chocolate. Shake off any excess, sprinkle with 1 tbsp nuts and set in the fridge.
Gently warm the milk and remaining nuts in a pan. Remove from the heat and leave to infuse for 30 minutes.
Strain the milk into a saucepan and discard the nuts. You should have 300ml. Return to the heat and stir in the remaining chocolate.
Beat the eggs and sugar with a whisk until pale and thick. Pour in the chocolate milk, return to the pan and set over a medium-low heat, stirring until the custard is thick enough to coat the back of a spoon. Leave to cool completely.
Whip the cream to soft peaks, then fold into the custard. Pour into an ice cream machine and churn according to instructions.
Stir in the marshmallows and biscuit pieces, then freeze for 2-3 hours.