We analyse the performance of twelve different implementations of Smoothed Particle Hydrodynamics (SPH) using seven tests designed to isolate key hydrodynamic elements of cosmological simulations which are known to cause the SPH algorithm problems. In order, we consider a shock tube, spherical adiabatic collapse, cooling flow model, drag, a cosmological simulation, rotating cloud-collapse and disc stability. In the implementations special attention is given to the way in which force symmetry is enforced in the equations of motion. We study in detail how the hydrodynamics are affected by different implementations of the artificial viscosity including those with a shear-correction modification. We present an improved first-order smoothing-length update algorithm that is designed to remove instabilities that are present in the Hernquist and Katz (1989) algorithm. For all tests we find that the artificial viscosity is the most important factor distinguishing the results from the various implementations. The second most important factor is the way force symmetry is achieved in the equation of motion. Most results favour a kernel symmetrization approach. The exact method by which SPH pressure forces are included has comparatively little effect on the results. Combining the equation of motion presented in Thomas and Couchman (1992) with a modification of the Monaghan and Gingold (1983) artificial viscosity leads to an SPH scheme that is both fast and reliable.