This book is on existence and necessary conditions, such as Potryagin’s maximum principle, for optimal control problems described by ordinary and partial differential equations. These necessary conditions are obtained from Kuhn-Tucker theorems for nonlinear programming problems in infinite dimensional spaces. The optimal control problems include control constraints, state constraints and target conditions. Evolution partial differential equations are studied using semigroup theory, abstract differential equations in linear spaces, integral equations and interpolation theory. Existence of optimal controls is established for arbitrary control sets by means of a general theory of relaxed controls.