The best time to travel depends on your needs and health.
Spring Cruises
The river locks tend to do their maintenance around April, so you risk needing to catch a bus for some of the journey and move to a new ship.
Summer Cruises
Summer is the best time, but cross your fingers that the rivers are not too low or too high.
Autumn/Fall Cruises
Autumn cruises are also fine, but the nights will be chilly.
Winter Cruises
Christmas Markets are the main attraction for those wishing to travel in late November and December. The best time is 24 November through 23 December, when those markets close. Some Christmas shops are open year-round, and some open in early November.
The “Christmas Markets” cruises are the same as the standard ones, but you simply have the benefit of seeing the Christmas stalls during your free time. For example, you can choose not to go back to the ship for lunch but instead wander through the markets.