Nonlinear Model Predictive Control is a thorough and rigorous introduction to nonlinear model predictive control (NMPC) for discrete-time and sampled-data systems. NMPC is interpreted as an approximation of infinite-horizon optimal control so that important properties like closed-loop stability, inverse optimality and suboptimality can be derived in a uniform manner. These results are complemented by discussions of feasibility and robustness. NMPC schemes with and without stabilizing terminal constraints are detailed and intuitive examples illustrate the performance of different NMPC variants. An introduction to nonlinear optimal control algorithms gives insight into how the nonlinear optimisation routine - the core of any NMPC controller - works. An appendix covering NMPC software and accompanying software in MATLAB(R) and C++(downloadable from www.springer.com/ISBN) enables readers to perform computer experiments exploring the possibilities and limitations of NMPC.