In high school, I came to know about the statement of the fundamental theorem of algebra:

Every polynomial of degree with integer coefficients have exactly complex roots (with appropriate multiplicity).

In high school, a polynomial = a polynomial in one variable. Then last year I learned 3 different proofs of the following statement of the fundamental theorem of algebra [involving, topology, complex analysis and Galois theory]:

Every non-zero, single-variable, degree polynomial with complex coefficients has, counted with multiplicity, exactly complex roots.

A more general statement about the number of roots of a polynomial in one variable is the Factor Theorem:

Let be a commutative ring with identity and let be a polynomial with coefficients in . The element is a root of if and only if divides .

A corollary of above theorem is that:

A polynomial of degree over a field has at most roots in .

(In case you know undergraduate level algebra, recall that is a Principal Ideal Domain if and only if is a field.)

The key fact that many times go unnoticed regarding the number of roots of a given polynomial (in one variable) is that the coefficients/solutions belong to a commutative ring (and is a field hence a commutative ring). The key step in the proof of all above theorems is the fact that the division algorithm holds only in some special commutative rings (like fields). I would like to illustrate my point with the following fact:

The equation has only 2 complex roots, namely and . But if we want solutions over 2×2 matrices (non-commutative set) then we have at least 3 solutions (consider 1 as 2×2 identity matrix and 0 as the 2×2 zero matrix.)

if we allow complex entries. This phenominona can also be illusttrated using a non-commutative number system, like quaternions. For more details refer to this Math.SE discussion.