Appropriate dinner cruise attire depends upon the cruise line or company's dress code (if one exists) and the type of dinner (seated in a formal dining room versus on deck in a relaxed environment). Some lines specify clothing, while others offer only guidelines, leaving sartorial decisions to your best judgement. In general, however, it is best to err on the side of formality, eschewing jeans and flip-flops for something a little nicer.
Unless otherwise indicated, a formal dinner cruise calls for full formal evening attire. For ladies, full-length evening gowns with heels, attractive jewelry and perfectly done hair and makeup are the norm. Men's formal wear includes tuxedo or dark suit with polished dress shoes -- never any khakis, polo shirts or boat shoes. Check with your cruise line beforehand if you do not have any formal wear; some lines may relax the rules, but others may refuse service.
The designation of "semi-formal" has the advantage of flexibility for both men and women. Cocktail dresses with heels are standard for women, while men should opt for dress pants and collared shirts. Jeans are occasionally acceptable, but only if they are dark and without holes or other signs of wear. It may be helpful to think of a semi-formal dinner cruise as a somewhat relaxed version of a formal one.
Not quite dressy, but not too laid-back, resort casual strikes a useful balance between flip-flops and stilettos (women) and oxfords and tennis shoes (men). Resort casual is the realm of boat shoes and leather sandals and is often a gray area for would-be cruisers. For women, however, capris, sundresses and knee-length skirts are always acceptable, while men can't go wrong with khakis, golf shirts and button-ups. Take along a cardigan or an attractive pullover for cool sea breezes.
Casual dinner cruises generally allow jeans, sneakers and non-collared shirts, with several caveats. For example, many cruise lines do not allow tank tops, flip-flops or swimwear even in a casual dining atmosphere. T-shirts are sometimes allowed as long as they are tasteful (according to the ship's standards), clean and fully intact. In general, even on a casual dinner cruise, it's best to cover feet, torso and legs both for your and other passengers' comfort.