Forest tree populations harbour high genetic diversity thanks to large effective population sizes and strong gene flow, allowing them to diversify through adaptation to local environmental pressures within dispersal distance. Many tree populations also experienced historical demographic fluctuations, including spatial population contraction or expansions at various temporal scales, which may constrain their ability to adapt to environmental variations. Our aim is to investigate how recent contraction and expansion events interfere with local adaptation, by studying patterns of adaptive divergence between closely related stands undergoing environmentally contrasted conditions, and having or not recently expanded. To investigate genome-wide signatures of local adaptation while accounting for demography, we analysed divergence in a European beech population by testing pairwise differentiation among four tree stands at ~35k Single Nucleotide Polymorphisms from ~9k genomic regions. We applied three divergence outlier search methods resting on different assumptions and targeting either single SNPs or contiguous genomic regions, while accounting for the effect of population size variations on genetic divergence. We found 27 signals of selective signatures in 19 target regions. Putatively adaptive divergence involved all stand pairs. We retrieved signals both when comparing old-growth stands and recently colonised areas and when comparing stands within the old-growth area. Therefore, adaptive divergence processes have taken place both over short time spans, under strong environmental contrasts, and over short ecological gradients, in populations that have been stable in the long term. This suggests that standing genetic variation supports local, microgeographic divergence processes, which can maintain genetic diversity at the landscape level.