"I watched one of Rick's travel shows and he went from St Goar to Bacharach on the scenic boat."
The viewers who copy Rick's Rhine example will indeed be making a slower slog in that direction (it's 70 minutes, vs. 40 minutes if you start in Bacharach.)
"Just once I went form St. Goar to Bacharach by boat. That trip is against the current and is excruciatingly slow."
The current is very strong. But with no solid frame of reference, Rick's followers probably do not notice. And if they start in Bacharach as Lee suggests, they probably won't know that they're omitting some great scenery, either. I strongly suggest doing Bingen - St. Goar if at all possible. This map of the Rhine shows the towns and castles between Koblenz and Bingen. Locate the Bacharach - Bingen segment to see what a Bacharach-to-St. Goar cruise (or Rick's St. Goar-to-Bacharach cruise) omits.
Bingen - St. Goar = 85 minutes. If you make the mistake of starting in St. Goar, you will have to spend 2.7 hours to see the same scenery!
"Even starting from Koblenz to Bacharach takes 4.5 hours."
Yup. And SIX hours if you cruise the entire scenic segment and end in Bingen! Besides the current problem, Koblenz' boat dock is a healthy trek from the train station. There is almost never a good reason to start the cruise in Koblenz.