Use ambiguous for something unclear or open to more than one interpretation, as in "the instructions were so ambiguous that half the team misunderstood them". Use ambivalent for a person having mixed or contradictory feelings, as in "he felt ambivalent about the promotion — excited but also anxious". The difference is what's unclear: with ambiguous, it's the meaning of a thing; with ambivalent, it's a person's own feelings.
The core difference
Ambiguous describes unclear meaning; ambivalent describes mixed feelings.
- ambiguous — unclear, open to more than one reading: His answer was deliberately ambiguous so he wouldn't have to commit either way.
- ambivalent — having mixed or contradictory feelings: She's ambivalent about moving abroad; part of her wants to go, part doesn't.
How to tell them apart
Both words start with the Latin prefix ambi-, meaning "both ways", which is the source of the confusion. Ambiguous comes from ambigere, "to wander about, be uncertain", and describes something — a statement, an instruction, an answer — that can be read more than one way. Ambivalent traces to ambivalence and the idea of two feelings holding equal strength at once, so it describes a person torn between reactions.
A useful trick: ambiguous is about words and meanings being unclear to a reader or listener, while ambivalent is about a person's own emotions pulling in two directions. If you can rephrase the sentence as "I don't know what this means", you want ambiguous; if it's "I don't know how I feel", you want ambivalent.