From elementary equivalence to isomorphism A few years ago, when I took the basic course in Logic, I was very surprised to discover that given a signature $\sigma$ and two structures $M$ and $N$ of $\sigma$ which are elementarily equivalent (that is, they satisfy the same first-order $\sigma$-sentences), they are not necessarily isomorphic, even if they are of the same cardinality.
My question is, are there some "reasonable" conditions that one may pose on either the signature $\sigma$ or the structures $M$ and $N$ that guarantee the implication: "If $M$ and $N$ are elementarily equivalent, then $M \cong N$"?
 A: First, you should note that the signature is determined by the structures and any two structures that are elementarily equivalent or isomorphic have to have the same signature.
For your question, I don't think much can be done in the realm of first order logic.  Asaf's answer is correct that you need $Th(M)$ to be categorical for $M \equiv N$ to imply $M \cong N$.  Fixing the language is even worse as, for every signature, there are non-categorical theories in it.
Things get a little more interesting when you move to infinitary languages.  $L_{\omega_1, \omega}$ is the logic formed by allowing countably many conjunctions and disjunctions (as opposed to finitely many in first order), while still requiring that there are only finitely many free variables.  In this logic, every countable structure has a Scott sentence which characterizes its countable isomorphism type.  That is: if $M$ is a countable structure, then there is a sentence $\phi_M \in L_{\omega_1, \omega}$ (of the language of $M$) such that if $N$ is a countable structure so $N \vDash \phi_M$, then $M \cong N$.
This doesn't generalize as nicely to larger infinitary languages as one might like, but I believe that if $cf(\lambda)=\omega$ and $M$ is a $\lambda$ sized model, then there is a $L_{\lambda^+, \omega}$ sentence with the same property.
