It's quite easy, actually: aligned is a special form of array, so \hline works. But I suggest to load the package booktabs:
\usepackage{booktabs}
...
\begin{equation*}
\begin{aligned}
x + 3& = 7\\
\midrule
-3 & = -3\\
\midrule
x& = 4\\
\end{aligned}
\end{equation*}
\midrule produce better spacing than \hline.
aligned (like align) requires a & before the alignment point (usually a relation), but not after it.
As Herbert points out, the vertical spacing may be not optimal. In case this is a real problem, one can resort to array (this requires the array package):
\begin{equation*}
\setlength{\arraycolsep}{0pt}
\begin{array}{r>{{}}l}
x + 3& = 7 \\
\midrule
-3 & = -3 \\
\midrule
x & = 4
\end{array}
\end{equation*}
The intercolumn space is reduced to zero and before the relation symbol we put an empty group, so that TeX finds {}=7 in the cell, that produces the correct horizontal spacing.
\midruleworks great. Wondering if there is something that works as well in analignenvironment? – Peter Grill Jul 14 '11 at 01:16\clineor\cmidrulebut has problems with vertical spacing – Jul 14 '11 at 06:56