Au cours de ses études supérieures, il intègre la Ligue des communistes de Slovénie, où il prend progressivement de l'importance au cours des années 1980 en soutenant le courant réformateur de Milan Kučan. Il rejoint le nouveau parti de la Liste unie des sociaux-démocrates (ZLSD) en 1993, dont il devient tout de suite vice-président.
Désigné président de la ZLSD en , il est réélu en et décide, lors de sa deuxième réélection au congrès d', de renommer la formation en « Sociaux-démocrates » (SD).
Député slovène
En 1990, il est élu délégué à l'Assemblée de la République slovène, où il est choisi pour présider les commissions des Affaires internationales et de la Jeunesse. Il entre deux ans plus tard à l'Assemblée nationale slovène, formée à la suite de l'indépendance du pays. Il devient aussitôt président de la délégation slovène à l'Assemblée parlementaire du Conseil de l'Europe (APCE). Réélu en 1996, il obtient également un poste de vice-président de la commission des Relations internationales. Il renonce à toutes ses fonctions en 1997.
De la présidence de l'Assemblée au Parlement européen
À la suite des élections législatives de 2000, la ZLSD accède au pouvoir dans le cadre d'une coalition gouvernementale avec la Démocratie libérale slovène (LDS) et d'autres partis, ce qui permet à Pahor d'être désigné président de l'Assemblée. Il se distingue alors par son comportement à la fois modéré et non partisan, ce qui lui vaudra le respect d'une importante partie de l'opposition de centre droit. Il démissionne le afin de pouvoir siéger au Parlement européen, où il a été élu au cours des premières élections européennes slovènes.
Le , le DeSUS annonce qu'il se retire de la coalition, son président Karl Erjavec dénonçant une alliance au sein de laquelle « l'honnêteté est négligée » et appelant à l'organisation d'élections anticipées[4]. Le président de Zares et ministre de la Science, Gregor Golobič, annonce trois jours plus tard qu'il compte remettre sa démission au mois de juin, à la suite des référendums d'initiative populaire portant sur la réforme du marché du travail et du système de retraites[5]. Le 20 septembre suivant, il perd un vote de confiance à l'Assemblée, avec seulement 36 voix, contre 51[6], ce qui conduit à la convocation d'élections anticipées. À l'occasion de ce scrutin, tenu le 4 décembre, son parti rétrograde à la troisième place, avec seulement dix sièges. Il est remplacé par son prédécesseur, Janez Janša, le .
À la fin de l'année 2012, il se présente à l'élection présidentielle, avec l'appui des Sociaux-démocrates et après avoir recueilli plus de quatre mille parrainages citoyens. Ses deux principaux adversaires sont le chef de l'État sortant, Danilo Türk, soutenu par Slovénie positive (PS), et Milan Zver, ancien ministre de l'Éducation et des Sports, candidat du Parti démocratique slovène. Avec 40,1 % des suffrages exprimés, dans un contexte de participation en nette baisse, il crée la surprise et arrive en tête du premier tour, devant Türk, qu'il affronte trois semaines plus tard[7]. Avec une participation encore en baisse, de seulement 41 % des inscrits, il s'impose au deuxième tour avec 67,4 % des suffrages face au chef de l'État sortant. Il prend ses fonctions le [8].
À la suite de l'annonce le de la démission prochaine de la présidente du gouvernement Alenka Bratušek, il fait savoir qu'il ne compte pas faire usage de son pouvoir de nomination pour la remplacer, ouvrant ainsi la voie à des élections anticipées[9].
Longtemps donné favori pour l'élection présidentielle de 2017, il présente sa candidature pour un second mandat présidentiel de cinq ans. Recueillant 47 % à l'issue du premier tour, il est toutefois mis en ballottage par le comédien Marjan Šarec ; au terme d'une campagne tendue, marquée par l'utilisation des réseaux sociaux[10], Pahor est réélu président de la République en recueillant 52,9 % des voix contre 47 % pour son adversaire[11].