Mad and angry mean the same thing, which is to say they both express a generalized emotion of anger.
Cross generally means "upset," which is to say it represents the emotion somebody feels when they're angry about one thing in particular... i.e. "I must have offended Claudia the other day... she seems rather cross with me." In the USA, "upset" is used far more often.
Furious means VERY mad... muy muy enojado :)
Annoyed means that that somebody is irritated... that something is getting on somebody's nerves. Generally you get annoyed when something small happens, something that isn't quite enough to make you mad... i.e. somebody cuts in front of you in line, you can't remember where you put your keys, your kid is making a loud noise for no reason at all, etc.
Generally, you get annoyed before you get mad.
Hope this helps!