OSP (Oligonucleotide Selection Program) selects oligonucleotide primers for DNA sequencing and the polymerase chain reaction (PCR). The user can specify (or use default) constraints for primer and amplified product lengths, %(G+C), (absolute or relative) melting temperatures, and primer 3' nucleotides. To help minimize nonspecific priming and primer secondary structure, OSP screens candidate primer sequences, using user-specifiable cutoffs, against potential base-pairing with a variety of sequences present in the reaction, including the primer itself, the other primer (for PCR), the amplified product, and any other sequences desired (e.g., repetitive element sequences in genomic templates, vector sequence in cloned templates, or other primer pair sequences in multiplexed PCR reactions). Base-pairing involving the primer 3' end is considered separately from base-pairing involving internal sequences. Primers meeting all constraints are ranked by a "combined score," a user-definable weighted sum of any of the above parameters. OSP is being routinely and extensively used to select sequencing primers for the Caenorhabditis elegans genome sequencing project and human genomic PCR primer pairs for the Washington University Genome Center mapping project, with success rates exceeding 96% and 81%, respectively. It is available for research purposes from the authors, at no cost, in both text output and interactive graphics (X windows) versions.