Formal wear will almost always include a dark colored suit (tuxedo) and bow tie, whereas semi-formal dress for men is a bit more flexible. Try a lighter colored suit, or a blazer and slacks with a sharp belt. Semi-formal wear can include a tie, but doesn't always have to, and shoes can be smart or relaxed.