What is a homomorphism?
Another way to think about it is that a homomorphism is a map that commutes with multiplication, addition, scaling - or whatever operations characterize your algebraic object.
This is actually almost the definition if you think about how multiplication is defined in a group, for instance. (The only caveat being that the two multiplication functions are different functions, unless the homomorphism is an endomorphism.) In other cases, it is exactly the definition - a linear transformation is a group homomorphism that commutes with multiplication by a real number.
A good example is the distributivity property of multiplication over (for instance) the integers: $x(a + b) = xa + xb$. This means that multiplication is a homomorphism from the group of integers with addition to itself.
Homomorphisms give you ways to relate different algebraic objects. For instance, there is a sense in which the integers sit inside the reals (both as groups with addition). This is established by saying that there is an injective homomorphism from one to the other.
Alternatively, there is a sense in which the group of rotations can be found by rolling up the real numbers to a circle (counting degrees modulo $2 \pi$). This suggests that there is a homomorphic surjection from the reals to $S^1$ (and indeed there is).
Often one is more interested in how objects relate to each other than how they actually are. In the algebraic setting, homomorphisms give a tool for talking about that. For instance, one of the uses of algebra is to describe invariants of spaces (circles, discs, spheres, tori, etc.), and use them to distinguish different spaces. Knowing how the algebraic invariants of related spaces are connected algebraically (via particular homomorphisms) is crucial to exploiting this.
Another use is to classify objects up to isomorphism (bijective homomorphisms) - many algebraic objects may appear different (the group symmetries of the triangle, the group of permutations of three letters), but turn out to be the same.
It depends on the context: You can talk about homomorphisms of groups, rings, fields, vector spaces, modules, and so on. The key idea is that homomorphisms respect the algebraic structure of the underlying object; so in groups, homomorphisms preserve the group operation (i.e. $\varphi(xy) = \varphi(x) \varphi(y)$).
In a vector space, a homomorphism must preserve both the operations of addition and scalar multiplication, so we require
$$\varphi(x + y) = \varphi(x) + \varphi(y)$$
$$\varphi(c x) = c \varphi(x)$$
for vectors $x, y$ and scalars $c$ respectively.
In many areas, it's more useful to study structure-preserving maps on an object, rather than just the object itself; this can encode additional information about the structure and its restrictions. For example in groups, the idea of a quotient group arises naturally from studying the kernels of homomorphisms (the kernel of a homomorphism is the set of elements mapped to the identity), which in turn leads to a very rich theory.
Alternatively, the set of bijective homomorphisms of a group form a group themselves, called the automorphism group, which in turn gives information about the original group.