  Both hard and soft QCD dynamics are important in charmonium production, as
presented here through a next-to-leading order QCD matrix element calculation
combined with the colour evaporation model. Observed $x_F$ and $p_\perp$
distributions of $J/\psi$ in hadroproduction at fixed target and $p\bar{p}$
collider energies are reproduced. Quite similar results can also be obtained in
a more phenomenologically useful Monte Carlo event generator where the
perturbative production of \ccbar pairs is instead obtained through leading
order matrix elements and the parton shower approximation of the higher order
processes. The soft dynamics may alternatively be described by the soft colour
interaction model, originally introduced in connection with rapidity gaps. We
also discuss the relative rates of different charmonium states and introduce an
improved model for mapping the continuous \ccbar mass spectrum on the physical
charmonium resonances.
