Variable selection pressures across heterogeneous landscapes can lead to local adaptation of populations. The extent of local adaptation depends on the interplay between natural selection and gene flow, but the nature of this relationship is complex. Gene flow can constrain local adaptation by eroding differentiation driven by natural selection, or local adaptation can itself constrain gene flow through selection against maladapted immigrants. Here we test for evidence that natural selection constrains gene flow among populations of a widespread passerine bird (Zonotrichia capensis) that are distributed along an elevational gradient in the Peruvian Andes. Using multilocus sequences and microsatellites screened in 142 individuals collected along a series of replicate transects, we found that mitochondrial gene flow was significantly reduced along elevational transects relative to latitudinal control transects. Nuclear gene flow, however, was not similarly reduced. Clines in mitochondrial haplotype frequency were strongly associated with transitions in environmental variables along the elevational transects, but this association was not observed for the nuclear markers. These results suggest that natural selection constrains mitochondrial gene flow along elevational gradients and that the mitonuclear discrepancy may be due to local adaptation of mitochondrial haplotypes.