You will need to manually string together your route using the MapProviders call to GetRouteBetweenPoints. Something like this:
MapRoute route = GMapProviders.GoogleMap.GetRouteBetweenPoints(start, waypoint1, false, false, 15);
route.Points.AddRange(GMapProviders.GoogleMap.GetRouteBetweenPoints(waypoint1, waypoint2, false, false, 15).Points);
route.Points.AddRange(GMapProviders.GoogleMap.GetRouteBetweenPoints(waypoint2, waypoint3, false, false, 15).Points);
route.Points.AddRange(GMapProviders.GoogleMap.GetRouteBetweenPoints(waypoint3, waypoint4, false, false, 15).Points);
route.Points.AddRange(GMapProviders.GoogleMap.GetRouteBetweenPoints(waypoint4, waypoint5, false, false, 15).Points);
route.Points.AddRange(GMapProviders.GoogleMap.GetRouteBetweenPoints(waypoint5, end, false, false, 15).Points);
As for the rest of what you asked, I cannot understand your broken English.