As well as good paper maps for the areas we are travelling in, we find that the best way to navigate electronically, especially whilst off road or in more remote locations is to use our laptop with a NMEA GPS receiver. most hiking GPS units support this via USB, but specific units are available at small cost. (e.g. GlobalSat BU-353)
As for software, the program we find the best is QlandKarte GT. Its free, reliable and works with almost any maps and hardware.
There are a multitude of other programs such as OziExplorer available and Garmin do their own version.
The open street map project is wikipedia for mapping and as such is all open source. Maps can be downloaded directly from OSM (http://www.openstreetmap.org/) but for use in Qlandkarte the following websites have proven useful:
Spain some of europe:
Our favourite, great coverage and better support for 4×4 tracks:
For other places;