Elliptic curves over ℂ are equipped with a systematic collection of Heegner points arising from the theory of complex multiplication and defined over abelian extensions of imaginary quadratic fields. These points are the key to the most decisive progress in the last decades on the Birch and Swinnerton-Dyer conjecture: an essentially complete proof for elliptic curves over ℂ of analytic rank ≤ 1, arising from the work of Gross–Zagier and Kolyvagin. In [Da2], it is suggested that Heegner points admit a host of conjectural generalisations, referred to as Stark–Heegner points because they occupy relative to their classical counterparts a position somewhat analogous to Stark units relative to elliptic or circular units. A better understanding of Stark–Heegner points would lead to progress on two related arithmetic questions: the explicit construction of global points on elliptic curves (a key issue arising in the Birch and Swinnerton-Dyer conjecture) and the analytic construction of class fields sought for in Kronecker’s Jugendtraum and Hilbert’s twelfth problem. The goal of this article is to survey Heegner points, Stark–Heegner points, their arithmetic applications and their relations (both proved, and conjectured) with special values of L-series attached to modular forms.