It is often useful to allow taking direct limits in set theory. This happens all the time when taking about ultrapowers.

But let's not limit ourselves to ultrapowers. Suppose that we have a sequence of models of $\sf ZFC$, $M_n$ for $n<\omega$, such that all of them are transitive and even countable, with the same ordinals. What reasonable assumptions would guarantee that $\bigcup M_n$ is again a model of $\sf ZFC$? What happens if we consider longer sequences of models (where we don't require all the models to satisfy $\sf ZFC$, or we don't require the sequence to be continuous at all limits)?

I am particularly interested in the case where each model is a forcing extension of its predecessor in the sequence; but not necessarily just that.

For example, one could think that the requirement "eventual stabilization of the von Neumann hierarchy" is enough. But it is not. Consider the following counterexample:

Start with a [countable transitive] model of $\sf GCH$, $M_0$ and choose (externally) a cofinal sequence $\kappa_n$ for $n<\omega$ in the ordinals of $M_0$; without loss of generality, $M_0\models``\kappa_n\text{ is a strong limit cardinal}"$. Next define $M_{n+1}$ to be the forcing extension of $M_n$ by $\operatorname{Add}(\kappa_n^+,\kappa_n^{+3})^{M_n}$.

It is easily verified that the $M_n$'s are all countable with the same ordinals, and that $M_n\subseteq M_{n+1}$, as well as that the von Neumann hierarchy there stabilizes.

However, in $M=\bigcup M_n$, we can look at the function $\varphi(n,\alpha)$ stating that $n<\omega$ and $\alpha$ is the unique ordinal such that $\sf GCH$ is violated $n-1$ times below it. Easily, $\varphi$ actually defines the sequence $\kappa_n$, which is a contradiction to Replacement.

On the other hand, the stabilization is necessary for us to get a model of the Power Set axiom. Otherwise, there is some $\alpha$ such that $V_\alpha^{M_n}$ never stabilizes, and therefore never becomes an element of $V_{\alpha+1}$ in the limit model.