This textbook contains the theory and some applications of the rank metric codes developed by the author and called Gabidulin Codes by the scientific community. A matrix code C is a set of matrices (codewords) of fixed size over a finite field. The code is considered in the rank metric that is defined as follows: The distance between two matrices is the rank of their difference. The code distance of a code C is the minimum distance between different code matrices. Given a metric, the main directions of coding theory are to design codes with a maximum number of codewords for a fixed code distance, to obtain the properties of the codes, to construct efficient decoding algorithms that find a code matrix nearest to a given matrix. This book can be recommended to students and researchers working with rank metric codes.