From my experience and various test runs on different webpages and programmes, my personal favourite tool for creating routes for a gps device is: GPSies
http://www.gpsies.com/createTrack.doI especially like following features:
1) It is rather easy to use
2) You can use diffrent types of map providers including (but not limited to) googlemaps/satellite, osm and osm cycle. You can switch between maps on the fly which is handy esp. if you're going off-road. So you can always choose the least bad map provider for an area.
3) You can export tracks to so many formats including .gpx .tcx and .kml
What I don't like:
1) The autorouting function (aka 'follow roads') is solely based on the googlemaps one for cars. You can't switch.