For the caramel layer. Add all three ingredients to a pan, heat on medium, stir well and bring to a boil whilst keep stirring. Allow the caramel to colour for 3 to 4 minutes.
Stir the peanuts into the caramel sauce making sure to evenly coat each nut.
Spread evenly into a 20x20cm (8x8 inches) lined with parchment/baking paper and place in the freezer to set during the next step.
For the nougat layer. Place the marshmallows in a pyrex bowl covered with a lid over a pan filled with water and melt on bain marie for 5 to 10 minutes (time can vary according to the size of your marshmallows). Please note: sometimes a few drops of water are required in order to melt the marshmallows properly, but be careful not to use to much water in this step as it will make the nougat layer to soft in the end result.
Once the marshmallows are melted, stir in the peanut butter and spread the mixture on top of the caramel layer forming another even layer.
Refrigerate overnight (or for at least 8 hours).
After the mixture is set remove it from the tray by grabbing and lifting the paper from each side. Place on a chopping board and with a sharp knife cut the block in four first, then each quarter into thirds. This will allow you to end up with 12 bars.
At this point if you find your bars to be still on the soft side (this depends on both the amount of water added to the nougat mixture and the brand of the condensed milk used), place in the freezer for an hour or two. Otherwise proceed with the next step.
The dark chocolate layer. Melt the chocolate in both microwave (at 30 seconds intervals at 350/400W) or again on bain marie, then dip each bar until fully coated. To coat you can use a couple of forks to submerge and toss the bars into the melted chocolate or run a wooden skewer into each bar to better dip them.
Arrange each bar on a plate or chopping board covered in baking paper and allow to cool in the refrigerator for a few hours (up to 4) before enjoying your homemade vegan Snicker bars.