One space after a period, comma, colon, semicolon, question mark, or exclamation point. However if there is a quotation mark and then a comma or any other mark, you don't need to put a space. Similarly, you can or skip putting space before and after the dash or emdash.