Plants have evolved R genes (resistance genes) whose products mediate resistance to specific virus, bacteria, oomycete, fungus, nematode or insect strains. R gene products are proteins that allow recognition of specific pathogen effectors, either through direct binding or by recognition of the effector's alteration of a host protein. Many R genes encode NB-LRR proteins (proteins with nucleotide-binding and leucine-rich repeat domains, also known as NLR proteins or STAND proteins, among other names). Most plant immune systems carry a repertoire of 100–600 different R gene homologs. Individual R genes have been demonstrated to mediate resistance to specific virus, bacteria, oomycete, fungus, nematode or insect strains. R gene products control a broad set of disease resistance responses whose induction is often sufficient to stop further pathogen growth/spread.
Studied R genes usually confer specificity for particular strains of a pathogen species (those that express the recognized effector). As first noted by Harold Flor in his mid-20th century formulation of the gene-for-gene relationship, a plant R gene has specificity for a pathogen avirulence gene (Avr gene).  Avirulence genes are now known to encode effectors.  The pathogen Avr gene must have matched specificity with the R gene for that R gene to confer resistance, suggesting a receptor/ligand interaction for Avr and R genes. Alternatively, an effector can modify its host cellular target (or a molecular decoy of that target), and the R gene product (NLR protein) activates defenses when it detects the modified form of the host target or decoy.