CRISPR screens are a powerful source of biological discovery, enabling the unbiased interrogation of gene function in a wide range of applications and species. In pooled CRISPR screens, various genetically encoded perturbations are introduced into pools of cells. The targeted cells proliferate under a biological challenge such as cell competition, drug treatment or viral infection. Subsequently, the perturbation-induced effects are evaluated by sequencing-based counting of the guide RNAs that specify each perturbation. The typical results of such screens are ranked lists of genes that confer sensitivity or resistance to the biological challenge of interest. Contributing to the broad utility of CRISPR screens, adaptations of the core CRISPR technology make it possible to activate, silence or otherwise manipulate the target genes. Moreover, high-content read-outs such as single-cell RNA sequencing and spatial imaging help characterize screened cells with unprecedented detail. Dedicated software tools facilitate bioinformatic analysis and enhance reproducibility. CRISPR screening has unravelled various molecular mechanisms in basic biology, medical genetics, cancer research, immunology, infectious diseases, microbiology and other fields. This Primer describes the basic and advanced concepts of CRISPR screening and its application as a flexible and reliable method for biological discovery, biomedical research and drug development — with a special emphasis on high-content methods that make it possible to obtain detailed biological insights directly as part of the screen. CRISPR screening is a high-throughput approach for identifying genes, pathways and mechanisms involved in a given phenotype or biological process. High-content read-outs of these screens, such as imaging and single-cell sequencing techniques, have further broadened its applicability. This Primer by Bock et al. describes the main concepts of CRISPR screening and gives examples of its application as a method for biological discovery, with a focus on the use of high-content read-outs.