Convex functions play an important role in almost all branches of mathematics as well as other areas of science and engineering. This book is a thorough introduction to contemporary convex function theory addressed to all people whose research or teaching interests intersect with the field of convexity. It covers a large variety of subjects, from the one real variable case (with all its mathematical gems) to some of the most advanced topics such as Choquet's theory, the Prékopa-Leindler type inequalities and their ramifications, as well as the variational approach of partial differential equations and convex programming. Many results are new and the whole book reflects the authors own experience, both in teaching and research. The book can serve as a reference and source of inspiration to researchers in several branches of mathematics and engineering and it can also be used for graduate courses.