Place the walnuts on a baking tray and roast for 5-6 minutes, allow to cool.
Meanwhile, place the cream, milk and vanilla in a large saucepan and heat to just below boiling point.
Whisk the egg yolks with the sugar in a large bowl until pale and thickened. Gradually whisk in the hot milk mixture until combined and pour back into the saucepan.
Cook the custard mixture on a medium-low heat, stirring continuously until it thickens slightly and coats the back of a spoon, about 8-10 minutes. Remove from the heat and allow to cool completely.
Chop 25g roasted walnuts and stir into the caramel sauce and set aside. Place half of the remaining walnuts in a small food processor and blitz until smooth, chop the rest and stir both into the cooled custard mixture.
Transfer to a freezer proof container and freeze for 1 hour. Mash with a fork to mix and refreeze for a further hour and repeat until frozen.
Warm the caramel sauce and serve with the ice cream.