You touch some very interesting points. Let's start easy. Take a polynomial f, we define a root of f as a point x such that f(x)=0.
So, for example, [itex]f(x)=x^2[/itex] has one root, namely 0. But [itex]f(x)=x^2-1[/itex] has two roots, namely 1 and -1. And [itex]f(x)=x^2+1[/itex] has no real roots.
As you noticed, this situation is unsatisfactory. Intuitively, we want [itex]x^2[/itex] to have two roots, not one. We want [itex]x^2[/itex] to have two equal roots. We say that the root 0 has multiplicity two.
How is that defined? Well, take an arbitrary number a. We say that a is a root of the polynomial f of multiplicity n if we can write
[tex]f(x)=(x-a)^ng(x)[/tex]
for some polynomial g.
Let's do some examples. Take a=0 and let [itex]f(x)=x+1[/itex]. Then we can only write
[tex]f(x)=(x-0)^0(x+1)[/tex]
so 0 is a root of multiplicity 0. We say that 0 is not a root.
Take a=0 and let [itex]f(x)=x^2+x[/itex], then we can write
[tex]f(x)=(x-0)^1(x+1)[/tex]
so 0 is now a root of multiplicity 1. If we have [itex]f(x)=x^{44}(x+1)[/itex], then 0 is a root of multiplicity 44.
We can see now that [itex]f(x)=x^2-1[/itex] has roots 1 and -1 and both have multiplicity 1. We can also see that [itex]f(x)=x^2[/itex] has only root 0 with multiplicity 2. And [itex]f(x)=x^2+1[/itex] still has no roots.
Now we can easily prove that every polynomial of degree n has at most n roots, if we count with multiplicity. So a quadratic equation [itex]f(x)=x^2+bx+c[/itex] has at most 2 roots, counter with multiplicity. Of course, it can still happen that there are no roots.
Another example: [itex]x^{100}+50x^4+3[/itex] has at most 100 roots, counter with multiplicity. So for example: there might by only 1 root with multiplicity 50, there might be 2 roots with multiplicity 50, there might be 50 roots with multiplicity 2, there might be 100 roots with multiplicity 1, etc.
This was the real case. Now we can extend everything to complex numbers. Now we got something very beautiful. If we allow complex numbers to be roots, then a very famous theorem says: every polynomial of degree n has exactly n roots, counter with multiplicity. This is the "fundamental theorem of the algebra."
For example, [itex]f(x)=x^2+1[/itex] has no real roots, but has two complex roots, namely i and -i. This is the nicest possible result.