It is important to choose appropriate semi-formal attire not just to fit in well with other guests, but to avoid offending the host of an event. The first step to choosing the best semi-formal attire is to consider the time of day an event takes place. A morning or afternoon event will be slightly less formal than an evening event, with the exception of weddings, which are formal regardless. This leads into the next consideration, the nature of the event. A fun holiday cocktail party, for instance, will require different attire than a formal, sit-down dinner, particularly if it will be with colleagues.
The type of attire required for an event can often be determined by simply looking at the invitation to see what time of day the event takes place, and whether the invitation specifies "semi-formal," "formal," or "black-tie." For events that take place during the day, both men and women have a little more freedom in what is considered appropriate semi-formal attire. Men should either wear a suit, or a sport coat and tie with slacks. Similarly, women may wear a light or dark colored dress, suit, or dressy separates, though this would be verging on "business attire," which is slightly more casual; the nature of the event and the list of people attending may further help in deciding.
For evening events, men should plan to wear a dark suit, regardless of the nature of the event. Women will also generally choose to wear a dark dress to evening events as well. Semi-formal dresses are usually knee length or slightly longer; not mini-skirts, which are too casual, and not floor-length, which are generally too formal. For a cocktail party a sleeveless dress may be appropriate, but for a formal dinner it is generally recommended that women wear a shrug or a dress with sleeves, as this is generally more polite.
Otherwise, there are few other rules for semi-formal attire. Holiday cocktail parties might be an appropriate place to wear a fancy dress with sequins or other eye-catching embellishments, whereas events like weddings generally require more subdued attire because it is considered rude to take attention away from the bride. It is always inappropriate to wear a white or cream colored dress to a wedding, regardless of the time of day it is held.
Keep in mind that shoes are an important part of semi-formal attire as well. Men should wear polished dress shoes, while women may choose to wear stylish heels or flats. Accessories should also match the outfit as well. Flip-flops are not appropriate semi-formal attire, but structured sandals may be for summer events. If an invitation is not specific, or if the nature of the event is unusual, there is no shame in calling the event organizer ahead of time, and simply asking what type of dress is appropriate.