Not to toot my own horn or anything, but I've recently revamped the maps on crazyguyonabike. They use Google's API. You can plot routes which follow the road (or not), use driving or bicycling routing, place annotated markers, draw shapes and polygons, upload files (gpx, tcx, kml, fit), and see elevation profiles (I downloaded almost a terabyte of global elevation data). I am still working on the elevation profile smoothing algorithms, but the maps as a whole work pretty well (I think) for route planning. You can even use Google's bicycle overlay to see bike routes. There's also a fullscreen mode if you like to use all of your big widescreen monitor to display maps.
Original discussion:
New Google Maps integration
New elevation profiles:
New elevation data for maps, improved elevation profile charts, and fullscreen mode
Documentation:
crazyguyonabike.com Help
Neil