This paper is concerned with a nonlinear Dynamic Matrix Control (DMC) algorithm in which measured disturbances are compensated. Neural networks are used to calculate on-line step response coefficients for the current operating point. Such models are obtained easily off-line, no recurrent training is necessary. The algorithm is computationally efficient since the optimal future control policy is determined on-line from an easy to solve quadratic programming problem and the model is not linearised on-line. It is shown that when applied to a significantly nonlinear process the algorithm offers good control accuracy (both trajectory tracking and disturbance compensation tasks are considered).