Model Predictive Control (MPC) is used for more and more applications in an industrial context. The applications are characterized by increasing complexity while the available computation time is getting smaller and smaller. MPC is the most important advanced control technique with even increasing importance. Hence, this topic should be covered in control lectures during the academic studies in order to prepare students for their future work. For the successful implementation of MPC algorithms, knowledge from multiple disciplines is crucial and needs to be taught. Besides teaching knowledge in classical control theory, especially fundamentals in the fields of modeling, simulation and numerical optimization are required for understanding MPC. Programming skills are inevitable to apply the concept in real-world applications.This paper presents a concept for teaching MPC from the theory to the application to real-world systems. Details about the lectures covering the relevant topics are given. In the hands-on exercises, students implement their own linear as well as nonlinear MPC in MATLAB/Simulink. As example application in the exercises, the air path of a turbocharged diesel engine with high pressure exhaust gas recirculation is investigated. At the end of the semester, students can test their developed controllers on a real diesel engine test bench and compete against each other for the best control performance.