What is the difference between homomorphism and isomorphism?
Let $G$ and $H$ be two groups, and $f$ a map from $G$ to $H$ ($\forall g\in G \Rightarrow f(g)\in H$). Then $f$ is a homomorphism if $\forall g_1,g_2\in G \Rightarrow f(g_1g_2)=f(g_1)f(g_2)$. This means that $G$ and $H$ are algebraically identical.
Isomorphism is a bijective homomorphism.
I see that isomorphism is more than homomorphism, but I don't really understand its power. When we hear about bijection, the first thing that comes to mind is topological homeomorphism, but here we are talking about algebraic structures, and topological spaces are not algebraic structures.
Then what is the "power" that makes us to define isomorphism as a special case of homomorphism?
Isomorphisms capture "equality" between objects in the sense of the structure you are considering. For example, $2 \mathbb{Z} \ \cong \mathbb{Z}$ as groups, meaning we could re-label the elements in the former and get exactly the latter.
This is not true for homomorphisms--homomorphisms can lose information about the object, whereas isomorphisms always preserve all of the information. For example, the map $\mathbb{Z} \rightarrow \mathbb{Z}/ 2\mathbb{Z}$ given by $z \mapsto z \text{ mod 2}$ loses a ton of information but is still a homomorphism.
Alternatively, isomorphisms are invertible homomorphisms (again emphasizing the preservation of information -- you can revert the map and go back).
Unlike in other areas of mathematics, talking about groups as sets and saying that (as sets) they are in bijection with each other isn't hugely useful. For example, the elements of $Q_8$ and $C_8$ are certainly in bijection with each other, but one is cyclic and the other isn't even abelian. This is why homomorphisms are important when studying algebraic structures; we look at maps that preserve the underlying algebraic structure to some degree.
Isomorphism means that the structures are 'the same'; we cannot really distinguish between them if we are only given abstract information about their elements and how the elements act on each other.
This is much stronger than one group being a homomorphic image of another, because one can lose lots of information about a group in the kernel of a homomorphism (just take $\pi : G \rightarrow G/N$ for any group $G$ and some quotient of it).