Why is the "finitely many" quantifier not definable in First Order Logic?

We can define formula $P_i$ that says "there are at most $i$ elements satisfying $P$". Now, if the infinite disjunction of the $P_i$ was definable in FO, it would (by compactness) imply a conjunction of some finite subset of the $P_i$, hence it would imply $P_i$ for some $i$. That is not true, if $P$ can have (say) $i+1$ elements satisfying it.


Any property expressible under first-order logic is closed under ultraproducts. The property of finite sets is not, however, closed under ultraproducts.