La commune est divisée en deux entités : le village de Sainte-Marie, situé à 15 km de Perpignan et à 3 km de Canet-en-Roussillon, et Sainte-Marie-Plage, à 2 km du village, le long du littoral méditerranéen, avec les Pyrénées en toile de fond. Les maisonnettes, accolées, se situent entre 100 et 400 m des commerces. Les résidences de vacances se situent à 100 m maximum de la plage avec accès direct.