Here is my representation theorist's perspective: the key difference between representations and modules is that representations are "non-linear", whereas modules are "linear". I'll concentrate on the case of groups as the most familiar, but this applies more generally.

As Greg has already mentioned, in the most general sense, a representation is a homomorphism $f:G\to H,$ and usually there is no linear (or additive) structure on $H$, i.e. the set $f(g)$ need not be closed under sums; in fact, if $H$ is a non-abelian group, e.g. the symmetric group, the notion of sum doesn't even make sense (if $H=GL(V)$ then we may view its elements as endomorphisms of $V$ and add them, but this is unnatural since, by definition, $f$ is compatible with *multiplicative* structure). By contrast, a module involves a *linear* action $G\times V\to V,$ which is then "completed" by allowing arbitrary linear combinations, leading to certain technical advantages.

Here is an example of a construction that is very useful and makes perfect sense module-theoretically, but not representation-theoretically: change of scalars. Given a module $M$ over a group ring $R[G]$ and a commutative ring homomorphism $R\to S,$ one gets a module $S\otimes_R M$ over the group ring $S[G]$. Common examples involve extensions of scalars (e.g. from $\mathbb{R}$ to $\mathbb{C}$, from a field $K$ of definition to the splitting field, from $\mathbb{Z}$ to $\mathbb{Z}_p$) and, more to the point, reductions (e.g. from $\mathbb{Z}$ or $\mathbb{Z}_p$ to $\mathbb{Z}/p\mathbb{Z}$). The module language is, predictably, also very useful in providing categorical descriptions of various operations on representations, such as functors of induction and restriction,

$$Ind_H^G: H\text{-mod}\to G\text{-mod}\ \text{ and }\ Res_H^G: G\text{-mod}\to H\text{-mod},$$

where $H$ is a subgroup of $G,$ or the monoidal structure on $G$-mod.

Finally, here are two illustrations of the complementary nature of the two approaches besides the group case, in linear algebra. A single linear transformation $T:V\to V$ on a finite-dimensional vector space $V$ over $K$ is most naturally viewed as a representation (no additive structure); in this case, it's a representation of the quiver with a single vertex and a single loop. From this point of view, classification up to isomorphism is a problem about conjugacy classes of linear transformations,

$$T\to gTg^{-1},\ g\in GL(V).$$

By contrast, in the module style description we associate with $T$ a module over the ring $K[x]$ of polynomials in one variable over $K$ and classification problem reduces to the structure of modules over $K[x]$, which is a PID, with all the usual consequences. (*Here the module picture is more illuminating.*) If we consider a linear operator $S:V\to W$ between two different vector spaces,

$$S\to hSg^{-1},\ g\in GL(V),\ h\in GL(W),$$

and a classification up to isomorphism is accomplished by row and column reduction. The corresponding quiver $\circ\to\circ$ is a single arrow connecting two distinct vertices, but its path algebra is less familiar. (*Here the representation theory picture is more illuminating.*)

irreducibleandcompletely reduciblefor representations,simpleandsemisimplefor modules. But people do mix the terms, and it's hard to say what is "correct". – Jim Humphreys Jul 20 '10 at 19:55