We present an overview of the variational and diffusion quantum Monte Carlo methods as implemented in the CASINO program. We particularly focus on developments made in the last decade, describing state-of-the-art quantum Monte Carlo algorithms and software and discussing their strengths and their weaknesses. We review a range of recent applications of CASINO.