A comprehensive review of the literature on manoeuvring target tracking for both uncluttered and cluttered measurements is presented. Various discrete-time dynamical models including nonrandom input, random-input and switching or hybrid system manoeuvre models are presented. The problem of manoeuvre detection is covered. Classical and current filtering methods for manoeuvre tracking are presented including multi-level process noise, input estimation, variable dimension filtering, two-stage Kalman filter, the interacting multiple model algorithm, and generalised pseudo-Bayesian algorithms. Various extensions of these algorithms to the case of cluttered measurements are also described and these include: joint manoeuvre and measurement association, probabilistic data association and multi-hypothesis tracking. Smoothing schemes, including IMM smoothing and batch expectation-maximisation using the Viterbi algorithm, are also described. The use of amplitude information for target measurement discrimination is discussed. It is noted that although many manoeuvre tacking techniques exist, the literature contains surprisingly few performance comparisons to guide the design engineer although a performance benchmark has recently been introduced.