We present a new algorithm for simulating two-fluid gas and dust mixtures in Smoothed Particle Hydrodynamics (SPH), systematically addressing a number of key issues including the generalised SPH density estimate in multi-fluid systems, the consistent treatment of variable smoothing length terms, finite particle size, time step stability, thermal coupling terms and the choice of kernel and smoot...