Poor aqueous solubility and low oral bioavailability of an active pharmaceutical ingredient are the major constraints during the development of new product. Various approaches have been used for enhancement of solubility of poorly aqueous soluble drugs, but success of these approaches depends on physical and chemical nature of the molecules being developed. Co-crystallization of drug substances offers a great opportunity for the development of new drug products with superior physicochemical such as melting point, tabletability, solubility, stability, bioavailability and permeability, while preserving the pharmacological properties of the active pharmaceutical ingredient. Co-crystals are multi component systems in which two components, an active pharmaceutical ingredient and a coformer are present in stoichiometric ratio and bonded together with non-covalent interactions in the crystal lattice. This review article presents a systematic overview of pharmaceutical co-crystals, differences between co-crystals with salts, solvates and hydrates are summarized along with the advantages of co-crystals with examples. The theoretical parameters underlying the selection of coformers and screening of co-crystals have been summarized and different methods of co-crystal formation and evaluation have been explained.