As the others have said, the difference is a subtle one. Both determiners refer to all members of a group. However, EACH somehow particularises the members, as if singling them out, while they are still belonging to the same group. EVERY has a more general meaning.
Every cat will enjoy being cuddled. (it's a highly probable characteristic/behaviour of any cat)
Each cat was given food. (every single cat out of, let's say 5 cats which somebody was taking care of while their owners were out of town, was fed)
Consider this distinction as well:
They received 5 dollars each.
Every one of them received 5 dollars.