How do we use the hyphen? It is confusing. Sometimes when using prefixes like 'anti' no hyphens are needed.. but sometimes they are. For example, anti-infective has a hyphen while antibacterial doesn't. Similar is the case with antiperspirant and anti-hero. How do we decide inserting the hyphen?
Gradually, words that started with the hyphen can move to "closed compound" (no hyphen) status. There's no clear point when a "with hyphen" word jumps to "no hyphen" status, but the publishers of the dictionary will choose which form to use based on common usage, their usage panel, etc.

As long as you stick with one dictionary, you will be consistent in your use.

See this from http://grammar.ccc.commnet.edu/grammar/marks/hyphen.htm on uses of the hyphen:
adding certain prefixes to words: When a prefix comes before a capitalized word or the prefix is capitalized, use a hyphen (non-English, A-frame, I-formation). The prefixes self-, all-, and ex- nearly always require a hyphen (ex-husband, all-inclusive, self-control), and when the prefix ends with the same letter that begins the word, you will often use a hyphen (anti-intellectual, de-emphasize), but not always (unnatural, coordinate, cooperate). By all means, use a good dictionary when in doubt! For further information about compound nouns and compound modifiers, see the separate section on Compound Words.

That link brings you to this:

Compounds with Prefixes

With a handful of exceptions, compounds created by the addition of a prefix are not hyphenated:
anteroom, antisocial, binomial, biochemistry, coordinate, counterclockwise, extraordinary, infrastructure, interrelated, intramural, macroeconomics, metaphysical, microeconomics, midtown, minibike, multicultural, neoromantic, nonviolent, overanxious, postwar, preconference, pseudointellectual, reunify, semiconductor, socioeconomic, subpar, supertanker, transatlantic, unnatural, underdeveloped
Exceptions include
compounds in which the second element is capitalized or a number: anti-Semitic, pre-1998, post-Freudian

compounds which need hyphens to avoid confusion: un-ionized (as distinguished from unionized), co-op

compounds in which a vowel would be repeated (especially to avoid confusion): co-op, semi-independent, anti-intellectual (but reestablish, reedit)

compounds consisting of more than one word: non-English-speaking, pre-Civil War

compounds that would be difficult to read without a hyphen: pro-life, pro-choice, co-edited
From: http://grammar.ccc.commnet.edu/grammar/compounds.htm
My advice is to pick a dictionary and use the form presented in that dictionary.
Students: We have free audio pronunciation exercises.
Are there really no rules? Thanks for the help though.
 BarbaraPA's reply was promoted to an answer.
Thank you very much!
Teachers: We supply a list of EFL job vacancies
PS - I do turn to a dictionary for this myself!

"compounds which need hyphens to avoid confusion: un-ionized (as distinguished from unionized), co-op".

Actually this is totally wrong. While I understand the need to 'dumb down' language in recent years, the word commonly spelled as ""Co-op" or "Co-operative" should actually be spelled using the diaresis, which, like the Umlaut in German, is a double dot over the second letter of a pair of similar vowels which indicates that the second vowel has a different pronounciation from the first.

The diaresis is also used in words like "Taxiing", "Skiing" and "Vacuum".

While words taxiing and skiing have "forced" pronounciation and don't require either a diaresis or a (shudder) hyphen, words like Cooperative and Vacuum do not and can easily be mispronounced without one or the other.

Indeed, the word "Vacuum" is almost universally pronounced incorrectly for this very reason, most people using the lazy "Vac-oom" pronounciation.

As for the rest, un-ionized/unionized (apart from being initially misspelt with a 'z' and not the correct 's') is a straw man. the word 'ionised' being very esoteric unless the speaker is a Chemist or Physicist.

As for the rest, non is acceptable in written English without either and would be written as (for instance) "non denominational", "anti fascist". The same applies to the word "anti" which, although used as a suffix is also a word in its own right so doesn't need anything but a space between itself and the word it is defining.

To suggest, as the writer above does, that phrases like "all inclusive", "self control" etc are written as a single word are just laughable and a sign of a poor secondary education.