Previous work has shown that molecular phylogenies of plastids, cyanobacteria, and proteobacteria based on the rubisco (ribulose-1,5-bisphosphate carboxylase/oxygenase) genes rbcL and rbcS are incongruent with molecular phylogenies based on other genes and are also incompatible with structural and biochemical information. Although it has been much speculated that this is the consequence of a single horizontal gene transfer (of a proteobacterial or mitochondrial rubisco operon into plastids of rhodophytic and chromophytic algae), neither this hypothesis nor the alternative hypothesis of ancient gene duplication have been examined in detail. We have conducted phylogenetic analyses of all available bacterial rbcL sequences, and representative plastid sequences, in order to explore these alternative hypothesis and fully examine the complexity of rubisco gene evolution. The rbcL phylogeny reveals a surprising number of gene relationships that are fundamentally incongruent with organismal relationships as inferred from multiple lines of other molecular evidence. On the order of six horizontal gene transfers are implied by the form I (L8S8) rbcL phylogeny, two between cyanobacteria and proteobacteria, one between proteobacteria and plastids, and three within proteobacteria. Alternatively, a single ancient duplication of the form I rubisco operon, followed by repeated and pervasive differential loss of one operon or the other, would account for much of this incongruity. In all probability, the rubisco operon has undergone multiple events of both horizontal gene transfer and gene duplication in different lineages.