How frequently genes pass through a hybrid zone may be influenced by the environment. Accordingly, in long hybrid zones that span more than one environmental setting, different patterns may emerge. The varied conditions allow testing of hypotheses on dispersal as a function of the environment. We reconstruct the amount and direction of gene flow across a heterogeneous hybrid zone of two species of marbled newts (Triturus marmoratus and Triturus pygmaeus), in four widely separated areas of the Iberian Peninsula from one mitochondrial and three nuclear genes. The main variables associated with the position of the contact zone are precipitation, rivers, altitude and relief. In some sections of the contact zone, however, its position is not correlated with any environmental factor and is instead determined by the shortest geographical distance between fixed positions at either side (mountains in the East and river in the West). In areas where the position of the zone is stable, gene flow was bidirectional. External data show that T. pygmaeus has superseded T. marmoratus over a large area and here gene flow was unidirectional. The prediction that a major river would reduce gene flow was not confirmed.