I believe this might work. We put two minipages on a line, the code is different from left(=odd, we start a paragraph there) and right(=even, we make a horizontal space before and vertical space after) Q&A
I hope that the usage is clear. We added \raggedbottom to allow the pages to be underfull.

\documentclass{article}
\raggedbottom
\newcounter{QA}
\newcommand\QA[2]{
\refstepcounter{QA}
\ifodd\arabic{QA}
\par\noindent\begin{minipage}[t]{0.47\textwidth}
\else
\hspace{0.06\textwidth}\begin{minipage}[t]{0.47\textwidth}
\fi
\textsf{\bfseries Q\arabic{QA}:}\hspace{0.3em plus 0.2em minus 0.1em}\ignorespaces#1
\smallskip\par
\textsf{\bfseries A\arabic{QA}:}\hspace{0.3em plus 0.2em minus 0.1em}\ignorespaces#2
\ifodd\arabic{QA}
\end{minipage}\ignorespaces
\else
\hspace{0.06\textwidth}\end{minipage}
\bigskip\par
\fi
}
\begin{document}
\QA{
Why $42$?
}{
Because $42=\int_0^{42}1 dx$.
Because $42=\int_0^{42}1 dx$.
Because $42=\int_0^{42}1 dx$.
Because $42=\int_0^{42}1 dx$.
Because $42=\int_0^{42}1 dx$.
Because $42=\int_0^{42}1 dx$.
}
%
\QA{
Why $43$?
}{
Because it is a prime number.
}
%
\QA{
Why $44$?
}{
Because it is a palindrome.
}
\end{document}
articleclass, thetwocolumnoption (hence\documentclass[twocolumn]{article}in your preamble) may help, unless you are trying to achieve something different.. – Corentin Dec 9 '12 at 12:24