For which rings does a polynomial in $R$ have finitely many roots? Which infinite rings satisfy the following 
Every non-zero polynomial in $R[X]$ has only finitely many roots ?
Are there such rings which are not integral domains ?

Assume $R$ is such an infinite ring, i.e. every non-zero polynomial has only finitely many roots.
If $a \in R$ is a zero-divisor, the set of roots of $ax \in R[x]$ is precisely the Annihilator of $a$, which is an ideal in $R$.
Let $0 \neq b \in \operatorname{Ann}(a)$. By assumption $bR$ must be finite, because we have $bR \subset \operatorname{Ann}(a)$. Consider the map $$R \to bR, 1 \mapsto b.$$
The image is finite, hence the kernel must be infinite (since $R$ is infinite). But the kernel is precisely the set of roots of $bx \in R[x]$, contradiction!
Conclusion: An infinite ring (commutative, with $1$) satisfies your property iff it is an integral domain.
