This is a question similar to: Understanding the Laplace operator conceptually
Homomorphisms and isomorphisms are easy to define:
1) given two groups $(G, *)$ and $(H, \cdot)$, a homomorphism is a function that maps elements from $G$ to $H$ such that if $a, b \in G \implies f(a*b) = f(a) \cdot f(b)$
2) a homomorphism $f$ is an isomorphism if $f$ is bijective
...but who cares? How would you explain why it is important to distinguish functions that fit these definitions? How do you wish you had been taught these concepts?
Any good essays (combining both history and conceptual understanding) on isomorphisms and homomorphisms that you would highly recommend?
The reason we care at all is that these structures we're talking about have an operation on them. An arbitrary function between two groups is rarely interesting. We want functions that have some relation to the operations. Homomorphisms are the most useful such functions because they literally preserve the operation. For another example an antihomomorphism reverses the operation.
Of the homomorphisms, isomorphisms are the purest. They tell us, at least with respect to the operation, that the two groups are the same, and they tell us how you translate one to the other. This concept allows us to classify groups in a reasonable way; in the classification we study their structure up to isomorphism.