I've had various GPS devices over the years and for walking over the past few, I have used a Garmin eTrex Legend. This is the replacement (the eTrex, I have given to friend).
The fact that it comes with the 1:50000 OS maps already (on a separate micro SD card, just to be inserted), means that it is very easy to spot alternate routes when out walking and the originally planned route looks a bit iffy for some reason.
However, the very best bit is being able to scan in paper maps and use them.
So, I'm off on holiday trekking in Greenland. I have bought the paper maps of the area where I will be. I have now scanned in the area and created a JPEG file. The next step is to load up Google Earth and add in the JPEG as an overlay. (Find the place in Google Earth first, then add the overlay). The time consuming bit is to move, rotate and stretch the JPEG so that it exactly matches the ground on Google Earth. I found it best to keep changing the opaque slider to see exactly what I have done. Eventually, I'm happy.
Now click the OK button in the dialogue and this is saved in Google Earth. You now need to right click on the name of the map (in the left hand table of places) and select . Save as a .kmz file (the d