What does "homomorphism" require that "morphism" doesn't? I'm starting to learn category theory, but there's one thing I don't get: all morphisms seem to be homomorphisms; the definition seems to be the same. What's the difference between these two? Can you give me an example of a non-homomorphic morphism?
Thank you for your patience,
 A: The morphisms in a category do not have to be functions at all, let alone homomorphisms. All that is required of a morphism in a category is to know what its domain and codomain are, and how to compose it with all morphisms in the category. 
Examples of categories where morphisms are not functions: Any poset $(P,\le)$ can be considered as a category where the objects are the elements in $P$ and a morphisms $x\to y$ exists iff $x\le y$. 
The category $Rel$, whose objects are all sets and a morphisms $f:A\to B$ is a relation, i.e. a subset $f\subseteq A\times B$. 
The category $Mat$ whose objects are the natural numbers, and a morphism $n\to m$ is an $n\times m$ matrix (with real entries for simplicity). Composition is matrix multiplication. 
A: First, keep in mind that the term "homomorphism" predates both the term "morphism" and the creation of category theory. 
"Homomorphism," roughly speaking, refers to a map between sets equipped with some kind of structure that preserves that structure. The collection of all such structured sets and homomorphisms between them thus forms a category $C$, but this category is itself equipped with some extra structure, namely a faithful functor $C \to \text{Set}$, making it a concrete category.
"Morphism," on the other hand, refers to an arrow in an arbitrary category. In particular, an arbitrary category need not be concretized (and in fact some categories cannot be concretized!). Its objects need not be interpreted as sets and its morphisms need not be interpreted as functions: there are many other ways of writing down categories than thinking about structured sets. 
Here is an example of a "category where the morphisms are not homomorphisms," but you really shouldn't think of it that way: consider the category whose objects are groups and whose morphisms are all functions (not necessarily preserving the group operations). (The reason I say you shouldn't think of it that way is that, to a category theorist, objects are just placeholders describing how morphisms can compose: all of the important information is in the morphisms, so I have no right to call the objects in this category groups if I can't detect their group structure using morphisms.) 
Concretizations of categories are both analogous to and generalize group actions. One of the more important habits of thought you can pick up while learning category theory is to think about categories abstractly without choosing a concretization, in the same way that you think about groups abstractly without choosing a group action. 
A: There are already some excellent answers here, but let me add something from a slightly different point-of-view.
First of all, homomorphism is not a word that can be used nakedly (so to speak) in mathematics.  It is a function between two structures that preserves their structure, in some sense, and this sense has to be specified as part of the theory of those particular structures. (E.g. in the theory of groups, we define group homomorphisms; in the theory of rings, we define ring homomorphisms, etc.)
Also, in certain contexts, there can be competing notions of homomorphisms (for rings with identity, should the homomorphisms preserve the identity?; for Banach spaces, should morphisms be simply continuous, or should they preserve the norm?); in any particular situation, if it hasn't already been made clear in the context, you have to specify which definition you're using.
Now, in some situations, we don't use the word homomorphism; e.g. we don't speak of a homomorphism of topological spaces (instead, we have continuous maps between topological spaces).  The choice of whether or not to use the word homomorphism is to some extent dictated by tradition, and also by general mathematical culture; the more algebraic the structures under consideration are, the more likely the word homomorphism is to be used in regard to them.
Now category theory abstracts the notion of mathematical structure and structure preserving maps between them.  As already noted in other answers, not all categories are concrete, or, even if they are, are not naturally thought of as being concrete.  And if we're talking about an arbitrary category, we don't specify what sort of objects the objects actually are; we just write $\mathcal C$, and $x \in\operatorname{Ob}\, \mathcal C$, and $f: x \to y$, without specifying what $\mathcal C$ is (just as in the theorems of a group theory text, we don't specify what the group $G$ is or what it's elements $x$ are or what its operation is; it is just some abstract, unspecified group).
Now the founders of category theory knew that they were abstracting a situation in which very often the category was going to consist of algebraic structures and homomorphisms between them.  But they also knew that they were abstracting examples like topological spaces and continuous maps, where homomorphism is not the traditional term.  Hence, they chose morphism as being close enough to homomorphism to be suggestive, but not identical, so that it didn't give the psychological impression of ruling out contexts like topological spaces and continuous maps.  [This last paragraph is my invention, not actual history, but is probably fairly close to the actual history, and hopefully gets the point across.]
Finally, it seems worth noting that often now in mathematics people speak of a morphism of rings or groups or ..., i.e. they drop the prefix homo-, and I think this is the influence of the general category-theoretic terminology.   
A: The term 'homomorphism' usually refers to structure-preserving maps between algebraic objects like groups, rings, and vector spaces.  Hence, in categories like $\mathbf{Grp}$, $\mathbf{Ring}$, and $\mathbf{Vect}_k$, the morphisms can be called homomorphisms.  
But in other categories like $\mathbf{Top}$, the category of all topological spaces, the morphisms are continuous functions, which aren't really referred to as homomorphisms.  In fact, a morphism doesn't need to be a function at all.  Fix a commutative ring $R$.  The category $\mathbf{Matr}_R$ consists of all positive integers as objects, and each $m \times n$ matrix $A$ with entries from $R$ is regarded as a morphism $A : n \to m$.   
So I think you're confused. The term 'homomorphism', whenever applicable,  means the exact same thing as morphism.
A: I will proceed to specify a category $\mathcal{C}$:


*

*The objects of $\mathcal{C}$ are as follows: $\;\;\mathrm{ob}(\mathcal{C})=\{\star,\diamond\}$

*The morphisms of $\mathcal{C}$ are as follows:
$$\begin{align*}
\mathrm{Mor}_{\mathcal{C}}(\star,\star)&=\{\mathrm{id}_{\star}\}& \mathrm{Mor}_{\mathcal{C}}(\diamond,\diamond)&=\{\mathrm{id}_{\diamond}\}\\[0.1in]
\mathrm{Mor}_{\mathcal{C}}(\star,\diamond)&=\{\heartsuit\}&\mathrm{Mor}_{\mathcal{C}}(\diamond,\star)&=\{\bullet\}
\end{align*}$$
Are the morphisms of $\mathcal{C}$ homomorphisms?
(What I'm getting at is: what would it even mean to be a homomorphism from $\star$ to $\diamond$?)
A: Not so.  The definition of a "morphism" depends heavily on the category in question - in fact, it is part of the definition of the category.  
So, for instance, you could consider the category $SET$, where the objects are sets and the morphisms between sets $A$ and $B$ are simply all the functions possible between the two sets.
