For Android you can download "Mapdroyd" from Market for free. It is not as nice as Google maps but allows you to download entire countries in advance for use with no data service.
For the more adventurous Android user there is an unauthorized hacked version of Google maps that has map caching for offline use as well as enabling Navigation in many countries that Google does not support. Unauthorized and not Google approved so it is not in Market. You can read about it and download the .apk here
http://forum.xda-developers.com/showthread.php?t=630887
If you are not using Android, I can't help you