the garmin connect route mapping was easy to use but didnt add altitude when i tried it a few month ago (however if you download rides that other people have done then the altitude data is there)
I generally make my routes on bikehike, save them to hard drive and then add them to the device using basecamp.
When using basecamp for the mapping i find drawing the maps is quite a slow process and when saving direct to the device from bikehike (or other online sites) then it can be bit hit and miss whether it saves properly first time. Plus i like to keep a folder on the desktop with the map files as a backup.