The traditional computational modeling of protein structure, dynamics, and interactions remains difficult for many protein systems. It is mostly due to the size of protein conformational spaces and required simulation time scales that are still too large to be studied in atomistic detail. Lowering the level of protein representation from all-atom to coarse-grained opens up new possibilities for studying protein systems. In this review we provide an overview of coarse-grained models focusing on their design, including choices of representation, models of energy functions, sampling of conformational space, and applications in the modeling of protein structure, dynamics, and interactions. A more detailed description is given for applications of coarse-grained models suitable for efficient combinations with all-atom simulations in multiscale modeling strategies.