Except when we use right to denote direction, what is the difference between these two terms?
Also, which one is the preferred construction between these two
Am I right?
Am I correct?
I'd say that there is a subtle distinction between the two, in that "correct" implies that the given answer (or answers) is definitive and absolute, as might be the case, for example, with a simple maths problem.
In contrast, "right" would be better for an answer which, although considered appropriate, is still matter of opinion (even if most people agree). This might apply, for example, to a question of ethics ("is this the right thing to do?"); again, using "correct" here would imply that there is an absolute answer that no-one could possibly disagree with.
"Right" can still be used in places where "correct" would be appropriate (such as a maths problem), but not the necessarily the other way around.
By definition they have the exact same meaning.
Modern English, however, is a mash-up of Anglo-Saxon (Old English) and Norman (French), linguists often refer to it as Anglo-Norman English. This gives us many cases of synonymous words such as "trash"(OE) and "garbage"(F) or "weep"(OE) and "cry"(F).
Because the Normans were usually the only ones educated, English words of French origin are often considered to be more technical, thus "correct"(F) carries a more definitive implication. Whereas words from the Old English are considered to be more emotional (and therefore found more often in poetry) thus "right"(OE) is more often used to imply opinion.