Hyphen is mainly used to glue words together. It notifies the reader that two or more elements in a sentence are linked. There should be no spaces before and after the hyphen. en dash is used to represent a span or range of numbers, date, or time. It is used to report scores or results of contests. It can be used between words to represent conflict, connection, or direction. em dash is used to take the place of commas (enhance readability), parentheses (to draw attention to the parenthetical content), or colons (to emphasize the conclusion of the sentence). Two em dashes can be used to indicate missing portions of a word, whether said word was intentionally omitted or not.
When should I use an em-dash, an en-dash, and a hyphen?