The deficiency you've noticed in the LaTeX description environment -- that if an item's "label" (the part in brackets) is longer than one line, it won't produce a proper line break -- is well known. The easiest workaround I'm aware of is to use the enumitem package and to start the description list with the option style=nextline, as in the following MWE:
\documentclass{article}
\usepackage{enumitem}
\begin{document}
\begin{description}[style=nextline]
\item[Why is there a deficiency in the basic description environment
that I have to struggle with?] Answer: Just use the enumitem package
and start the description environment with the "style=nextline" option.
\item[Question 2?] Answer 2.
\end{description}
\end{document}
Note that if you do not want the "Answer" (i.e., the text after the item's "label") to start on a new line, all you need to change is to set the option style=sameline at the beginning the description environment.
Addendum: If you wish to have the "style=nextline" instruction apply to all description environments, it would be tedious to have to remember to specify this option every single time. Instead, you should issue the instruction
\setlist[description]{style=nextline}
after loading the enumitem package to set this option globally. The resulting behavior can be overridden if need be, on a case-by-case basis, by supplying the option [style=same-line] when a given description environment is initiated.