With \newtheorem{thm}{Theorem}[section] you are defining a thm environment that requires to be used as
\begin{thm}
A statement.
\end{thm}
The fact that \thm doesn't give errors is just because of the internal implementation of the \begin and \end commands, which shouldn't really be relied upon.
The \theoremstyle declaration uses the property of environments of being a group in the TeXnical sense: declarations inside them end their scope at the corresponding \end command.
When you do
\theoremstyle{remark}
\newtheorem{case}{Case}
in the preamble and have \begin{case} in your document, LaTeX performs some assignments such as stating that the "Case" label is typeset in italics. This is made by the internal \case macro (which you shouldn't be using). In this case no "end of scope" is seen and so the next instance of thm will inherit the font attributes of case for the label: being in the default plain style, \thm doesn't issue font declarations.
The \begin–\end syntax is also much clearer, in my opinion: it gives visual clues in your input for finding things more easily. It's just a question of training and, maybe, of having a good text editor that inserts the \begin and \end tags with just a keystroke.
\begin{thm}...\end{thm}, not\thm. I don't know what specifications there are for using\thmas you did. – Ari Brodsky Feb 10 at 6:48\thmas\begin{thm}#1\end{thm}. – hyh Feb 10 at 6:52\end{thm}, if you have no way to show where the theorem ends? – Federico Poloni Feb 10 at 8:46\newcommand{\thm}[1]{\begin{thm}#1\end{thm}}whenthmis defined as anewtheorem. – hyh Feb 10 at 17:27