Understanding range limits is a fundamental problem in ecology and evolutionary biology. In 1963, Mayr argued that “contaminating” gene flow from central populations constrained adaptation in marginal populations, preventing range expansion, while in 1984, Bradshaw suggested that absence of genetic variation prevented species from occurring everywhere. Understanding stability of range boundaries requires unraveling the interplay of demography, gene flow, and evolution of populations in concrete landscape settings. We walk through a set of interrelated spatial scenarios that illustrate interesting complexities of this interplay. To motivate our individual-based model results, we consider a hypothetical zooplankter in a landscape of discrete water bodies coupled by dispersal. We examine how patterns of dispersal influence adaptation in sink habitats where conditions are outside the species’ niche. The likelihood of observing niche evolution (and thus range expansion) over any given timescale depends on (1) the degree of initial maladaptation; (2) pattern (pulsed vs. continuous, uni- vs. bidirectional), timing (juvenile vs. adult), and rate of dispersal (and hence population size); (3) mutation rate; (4) sexuality; and (5) the degree of heterogeneity in the occupied range. We also show how the genetic architecture of polygenic adaptation is influenced by the interplay of selection and dispersal in heterogeneous landscapes.