We recently returned from a Viking cruise on the Danube.
The parts of the cruise planned by Viking are well done. One guide in Budapest was awful but the rest were outstanding. The Best of Budapest optional excursion is expensive but truly worth it.
The food is good and the wine/beer at meals is included. Unless you drink A LOT you rarely have to buy anything on board. There's little time outside of meals and an hour or so in the evening. Doing laundry on board is VERY expensive. $2.00 for a pair of underwear or socks.
Typical for a cruise except with large windows. Cabin steward did a wonderful job of keeping things nice.