In TeX gibt es die Primitive `\everypar`. Diese enthält eine Token-Liste, die zu Beginn jedes Paragraphs ausgeführt wird.
\documentclass{article}
\pagestyle{empty}% zum freistellen
\usepackage{hyperref,lipsum}
\usepackage{fmtcount,hyperref,lipsum}
\newcounter{parcount}
\setcounter{parcount}{0}
\newcommand\parnum{
\everypar{%
\refstepcounter{parcount}%
\label{par:\arabic{parcount}}%
\marginpar{\bfseries\hfill\arabic{parcount}}%
\marginpar{\bfseries\hfill\padzeroes[3]\decimal{parcount}}%
}}
\newcommand\noparnum{\everypar{}}
\begin{document}
\reversemarginpar
\parnum
\lipsum[66]\label{par:1}
\lipsum[66]\label{par:2}
\noparnum
\lipsum[66]
\lipsum[66]
\noparnum
\lipsum[66]
\parnum
\lipsum[66]
\lipsum[66]\label{par:3}
\lipsum[66]
\lipsum[66]
Siehe Paragraph \ref{par:1} oder \ref{par:2} oder diesen, \ref{par:3}
\end{document}
> ![alt text][1]
[1]: http://texwelt.de/wissen/upfiles/r_5.pnghttp://texwelt.de/wissen/upfiles/r_6.png