Something's wrong--perhaps a missing \item
Is a notorious error message in LaTeX, it is almost never caused by a missing \item. It is actually generated if you use \addvspace in horizontal mode. As you have not given any context all we can say is that whatever you passed in as argument #2 or #3 is not allowed at the place where you used the command. The newcommand and the \ifnum test are not really relevant to the error.
Since the command you are passing as argument needs to be in vertical mode, a wild guess is that putting it in vertical mode might be sufficient, \par will end the previous paragraph and get TeX into vertical mode so perhaps
\newcommand\Quest[3]{\par\ifnum\solnversion=1 #3\else #2\fi}
will work, If not (and in future questions) Please supply a complete small document that shows the problem,
\newif\ifsolutions \solutionsfalse \newcommand\Quest[3]{\item \ifsolutions#3\else#2\fi}. For other ways of using conditionals, see http://tex.stackexchange.com/questions/5894/latex-conditional-expression – kahen Mar 19 '13 at 08:02\documentclass{...}and ending with\end{document}. – bencarabelli Mar 19 '13 at 08:04\Questin your LaTeX document outside anyitemizeorenumerateenvironment. An MWE would really help :) – Ronny Mar 19 '13 at 08:14\ifnumlooks incorrect to me. The if syntax in the question is valid. There is no need to declare a new if if you are just testing a number. – David Carlisle Mar 19 '13 at 09:33