This was our very first cruise experience of any type (we've never even been on an ocean cruise). So, we have nothing with which to compare it but, bottom line, we enjoyed it and would go on another river cruise. We did the Viking Cruise on the Rhine from Basel to Amsterdam where you hit four countries (Switzerland, France, Germany & the Netherlands) and many different cities. The cabins are small but very well engineered with lots of closet and storage space such that you don't feel cramped. They each have a large picture window that provides a nice view of the river and the towns along the way (see photo). The staff, for the most part, are friendly and helpful. The included excursions are, with few exceptions, well run and professionally guided. The only optional tour we took was the excursion to Colmar and that was worth it - the rest seemed like a waste of time (do you really need to tour another vineyard?)
The main complaint concerns the meals. The breakfast is fine with both hot and cold items that are well prepared and tasty. They will prepare some special orders, e.g., I ordered an egg white omelette. Lunch always includes an extensive salad bar plus one hot items such as a hamburger or sandwich. Dinners were a problem. First, the menu is limited to a choice of only 2 entrees (meat or fish) plus a vegetarian option (e.g, pasta). In addition to the limited choice, the quality was poor to mediocre at best. So, while I was disappointed, I was not surprised since I had been warned by previous travelers and, quite frankly, I did not take this cruise for the cuisine. One more thing: if you are looking for extensive night life, e.g., shows, gambling, dancing, you will not find it on this river cruise. This mattered little to us since we were pretty tired after a day of sightseeing and ready to go to sleep early. Yes, there was some evening entertainment such as a glass blower one night, a classical music group another night and some other limited activities.
Another point to be aware of --- during the early part of the cruise, at various stops, you disembarked and then boarded a bus to take you to a city (e.g., Heidelberg) or area (Black Forest). This was at odds with what some people (including us) expected which was that the ship would dock at a port and you would be able to walk to the town or site. To be fair, this did happen at later stops on the Rhine such as Rudesheim and Cologne.