Transcription termination in Escherichia coli is controlled by many factors. The sequence of the DNA template, the structure of the transcript, and the actions of auxiliary proteins all play a role in determining the efficiency of the process. Termination is regulated and can be enhanced or suppressed by host and phage proteins. This complex reaction is rapidly yielding to biochemical and structural analysis of the interacting factors. Below we review and attempt to unify into basic principles the remarkable recent progress in understanding transcription termination and anti-termination.