In order to include standard list environments in a tabular you need to "box" it. The minipage environment provides a good means to do so. Additionally, item labelling is easily customizable via enumitem:

\documentclass{article} \usepackage{enumitem}% http://ctan.org/pkg/enumitem \begin{document} \begin{tabular}{c c} Column 1 & Column 2 \\ \hline \\[-\dimexpr\normalbaselineskip-\jot] \begin{minipage}{0.3\textwidth}\begin{enumerate}[label={\strut\arabic*.}] \item First step \item Second step \item Last step \end{enumerate}\end{minipage} & \begin{minipage}{0.3\textwidth}\begin{enumerate}[label={\strut}] \item First reason \item Second reason \item Last reason \end{enumerate}\end{minipage} \\ \hline \end{tabular} \end{document}
The Column 1 list has a regular list form, while the list in Column 2 is set without label. I've added a \strut to both labels to ensure that short items without descenders have proper depth. Also, since minipage boxing is known for removing proper vertical spacing, I've added a \jot gap between the column headings and the tabular body. This is achieved by adding an extra row of height \jot-\normalbaselineskip (via \dimexpr). More on the minipage "behaviour" and possible corrections can be obtained from: How to keep a constant baselineskip when using minipages (or \parboxes)?
The advantage of still having a list within the table is that the standard spacing (labelwidth, labelsep, itemindent, ...) for longer items still hold. You may want to remove the label separation as well for Column 2, but this depends on your actual application. All these settings can be changed on the fly. Read more about it in the enumitem documentation.
Step XandReason Xdiffer? Or are they going to be the same?