In a large saucepan, warm the milk and stir in the chocolate extract and Frangelico. Beat egg yolks with the caster sugar until pale and fluffy and stir into the warm milk.
Cook over a medium heat stirring constantly until mix comes to the boil. Remove from heat and allow to cool.
If you have an ice-cream maker, use according to the instructions. Otherwise, place mix in the freezer in a shallow container with a lid. When set but not hard, score mix with a knife and place cubes into a food processor and blend until smooth.
Fold in chopped hazelnuts and chocolates and return to freezer to set overnight.