The best way to remember the difference between these two words is to think in terms of the model used by communications theorists.
Communication consists of a message, a sender, and a receiver.
The sender can imply, but the receiver can only infer.
The error that usually occurs is that the word infer is mistakenly used for imply.
WRONG: Are you inferring that I am a fool?
RIGHT: Are you implying that I am a fool?
INFER = to take the suggestion out of the message (receiver infers)
IMPLICATION = what the sender has implied
INFERENCE = what the receiver has inferred