Le vote a été construit historiquement comme corollaire d’une citoyenneté elle-même référée à la nationalité. Le vote est lié à la nationalité et non au pays de résidence. Les étrangers résidant sur le territoire national ne votent pas, tandis que les Français établis à l’étranger peuvent, à certaines conditions, voter (ils disposent de représentants au Sénat, et, depuis 2008, à l’Assemblée nationale).
Cette équivalence entre droit de vote et nationalité est parfois contestée. Les étrangers résidant sur le territoire paient des impôts, sont usagers du service public et participent de fait à la vie de la cité. Certains hommes politiques se sont prononcés pour le droit de vote aux élections locales à tous les étrangers (François Hollande lors de la campagne pour l’élection présidentielle en 2012, comme François Mitterrand avant lui en 1981), ou s’y étaient déclarés favorables (Nicolas Sarkozy au début des années 2000), sans que cela soit suivi d’effet.
Depuis le traité de Maastricht de 1992, la France, comme les autres États de l’Union européenne, autorise les étrangers ressortissants de pays membres de l’Union européenne à voter aux élections locales et européennes. Le traité a été appliqué en France à partir des élections municipales de 2001. Les étrangers ne sont cependant pas éligibles comme maires ou adjoints, car ce serait leur permettre de participer à la désignation des sénateurs, donc d’une instance dépositaire de la souveraineté nationale.
Il faut noter que le droit français tend de plus en plus à viser par "étranger" les nationaux d’un État non membre de l’Union européenne, et à ne pas considérer les ressortissants d’un autre État membre de l’Union comme étranger, mais comme citoyen européen.