I've recently read about Vopenka's Theorem (Jech 15.46), which states that if A is a set of ordinals, then $L[A]=HOD^{L[A]}[G]$, meaning that if $HOD^{L[A]}\subsetneq L[A]$ then $L[A]$ is a generic extension of a smaller model.
Are there any other theorems which state conclusively that a particular inner model is a generic extension of some smaller model? Even better - is there some sort of general criterion that we can apply that tells us if a model is a generic extension?
Yes. Lev Bukovský proved a very general theorem that deals precisely with this problem:
Bukovský characterizes when, for a given regular cardinal $\lambda$, $V$ is a $\lambda$-cc generic extension of a given inner model $W$. For a modern write-up of Bukovský's theorem, see
Bukovský proved that $V$ is a $\lambda$-cc extension of $W$ if and only if $W$ uniformly $\lambda$-covers $V$, meaning that for all functions $f\in V$ whose domain is in $W$ and whose range is contained in $W$ there is some function $g\in W$ with the same domain and such that $f(x) \in g(x)$ and $|g(x)| < \lambda$ for all $x \in \operatorname{dom}(f)$. (Of course, relativizing to an inner model, we get a characterization of when that inner model is itself a generic extension of another one, which was your explicit question.)
The one drawback is that the result is so general that in specific situations its applicability may not be clear. In many cases, one uses ad hoc methods.
There is active work in what is now called set-theoretic geology, the study of the class of inner models $W$ of which $V$ is a generic extension. Reading the literature in this area may provide specific examples (and, anyway, it is a nice area). Moreover, the terminology it has introduced (including mantles, grounds, bedrocks, and other terms) is spreading, so it is a good idea to catch up on the basics early on. A good place to get started is
There are also some results involving large cardinals; this is actually a common situation. Typically, you start with an elementary embedding $j\!:V\to M$ with critical point $\kappa$, where $M$ has reasonable closure properties. Say you are in a situation where you define some forcing iteration $({\mathbb{P}}_\alpha,\dot{\mathbb{Q}}_\alpha:\alpha\le\kappa)$ and want to argue that it preserves, say, measurability of $\kappa$. The easiest way to do this would be to show that if $G$ is $\mathbb{P}_\kappa$-generic over $V$, then in $V[G]$ the embedding $j$ lifts to an embedding $\hat j\!:V[G]\to N$. Letting $$j({\mathbb{P}}_\alpha,\dot{\mathbb{Q}}_\alpha:\alpha\le\kappa)=({\mathbb{P}'}_\alpha,\dot{\mathbb{Q}'}_\alpha:\alpha\le j(\kappa)),$$ one common way of achieving this is to show that $\mathbb{P}'_\alpha=\mathbb{P}_\alpha$ for $\alpha\le\kappa$ and that, in $V[G]$, there is an $H$ generic over $M[G]$ for the tail of the iteration. If this is the case, then $j$ lifts straightforwardly: You simply map the $G$-interpretation of a $\mathbb{P}_\kappa$-name $\tau$ to the $G*H$-interpretation of the ${\mathbb{P}'}_{j(\kappa)}$-name $j(\tau)$. Effectively, what you are doing is identifying generic extensions of inner models in $V[G]$. A good place to read about this setting is
Finally, there are scattered results that show cases where some inner models are generic extensions of other models and that are detected by techniques independent of Bukovský's approach. For instance, there is a nice characterization (due to Mathias) of when a sequence is generic for Prikry forcing. It leads to the following result: Suppose $\kappa$ is measurable and $U$ is a witnessing normal ultrafilter. You have an ultrapower embedding $j_{0,1}=j\!: V=M_0\to M_1$ mapping $\kappa_0=\kappa$ to $\kappa_1=j(\kappa)$ and $U_0=U$ to $U_1=j(U)$. You can iterate this situation in the obvious way to obtain embeddings $j_{n,n+1}\!:M_n\to M_{n+1}$. The direct limit $M_\omega$ is well-founded. Its measurable cardinal $\kappa_\omega$ is actually the supremum of the $\kappa_n$ so it is singular in $V$ (and $M_\omega$ does not see the sequence of the $\kappa_n$). Let $M_\omega^+=\bigcap_n M_n$. Solovay proved that $G=\{\kappa_n:n<\omega\}$ is generic over $M_\omega$ for the Prikry forcing corresponding to $U_\omega$ and that $M_\omega^+=M_\omega[G]$. Patrick Dehornoy has generalizations of this result, see for instance