Why limits give us the exact value of the slope of the tangent line? Limits tell us how functions behave at $x\to a$, not how they behave at $x = a$. However, in limits we plug $x = a$ as an approximation of $x\to a$, so: why the limits give us the exact value of slope of the tangent line, despite being just an approximation of what happend around $x$?
 A: I think I understand where you're coming from. I had the same reaction! Tangent lines should exist regardless of limits and derivatives. So, when we construct the tangent line via the derivative, we should be able to check that it's correct.
I think we're both wrong—tangent lines don't rigorously exist independent of derivatives. There are too many edge cases and difficulties when you try to define them, so we either end up with 1) no definition, which gives us no way to rigorously check that the derivative is correct; or 2) we use the derivative as our definition.
To see the difficulties involved, consider $f(x)=x^3$. We'll call the tangent line $\ell$, tangent at $x_0$.
We want, of course, for $\ell$ to touch $f$ at $x_0$. But we want it to do so ONLY once within a small neighborhood. So perhaps we could use this as the definition of a tangent line.
However, secant lines also fit this definition! So it can't be correct. To fix this, perhaps we note that on the right side of $f$, the tangent line is always below the curve in a small neighborhood, and on the left side, it's above, and at $x_0=0$, the tangent line is just flat. Perhaps we could restrict the tangent line to abide by this—below on right, above on left, flat in middle—and have that amendment make our definition.
And that would work, I suppose. But it's an ugly piecewise definition, and, more importantly, it doesn't generalize well. To tell where the tangent line should be 'above' or 'below' uses the concept of concavity, which we need derivatives for. So we are able to rigorously define a tangent line without derivatives for $x^3$, but not in general.
The tangent line is a deceptively difficult concept to define. There isn't (as far as I know) a generally accepted definition besides derivatives that we can use to verify that derivatives give the correct results. You can always check for each individual problem you come across by eyeballing what the tangent line should be, but doing it in general is hard.
A: A line-by-line correction of OP that should answer the confusions therein:
(1) Limits tell us how a function behaves nearby $x=a.$ The function doesn't even have to be defined at $a.$ If it is also defined there, and it coincides with the limit, then the limit in addition happens to tell us what's happening at $a,$ contrary to your first sentence. But the important thing to note is that limits tell us how a function is behaving in the neighborhood of some point in its domain.
(2) From above, it follows that $f(a)$ need not exist at all in order for $\lim_{x\to a}{f(x)}$ to exist. Indeed, even if $f(a)$ exists, it need not coincide with the limiting value. In essence, limiting values have nothing essentially to do with values. But in cases where $\lim_{x\to a}{f(x)}$ exists and coincides with $f(a),$ we may use this fact to evaluate the limiting value, but it is no way an approximation. There's nothing about approximations here. The conditions are all equalities. Again, the salient point here is that we can't always evaluate limits, when they exist, by a substitution as you think. This only applies to functions continuous at the point in question.
(3) You have yet to understand the concept of limit properly. It is not an approximation to anything, but rather that towards which we approximate; thus by definition it will sometimes transcend every approximant. Rather, limits are a way to extend usual concepts into wider domains of applicability in such a way that the new objects properly generalise the old -- that is, they possess all important properties of the old objects, and contain the latter as a subclass. In particular here, bringing in limiting operations helps us to assign a definite meaning to some sequences of approximations that distinguish themselves from others. Note that whereas some terms of these types of sequence approximate the limiting value, this value itself is decidedly not an approximation, but a uniquely defined value, fixed by this sequence (and an assumption about bounded, nonempty subsets of real numbers that genuinely and smoothly extends the concept of maximum or minimum values of bounded, nonempty subsets of numbers). This well-defined limiting value, whenever it exists, has been shown many times over to legitimately (in a sense that can be made precise) extend the domain of application of the concept under study. Here, it follows that whenever a sequence of approximating slopes converges, we can choose to call (by a justified extension) the limit a slope too, indeed the slope, defined by that sequence. That's simply what it means to work with real numbers. If you've not understood this property (technically called completeness) then you've not begun to understand the real numbers.
A: I think the problem with your thinking is that you are assuming that there is something that is predefined by "god", which is the slope at a point that has an exact value, and we are trying to reach it by the process of taking a limit, and we can never reach that value. But that is not the case. What we do is that we define the notion of the slope at a point by the process of taking a limit. And what ever the exact value that comes out of the limit is what we call the slope at that point.
I guess that what is bothering you is the notion of a limit that you learn at a first-year calculus course, and I felt the same when I first learn it, because at some stage of the problem we say that x approaches some value a, then at another stage we substitute a for x. But to understand what is actually going on... you have to understand the epsilon-delta definition of a limit.
see:https://en.wikipedia.org/wiki/(%CE%B5,_%CE%B4)-definition_of_limit
A: The idea is that the approximation gets better and better as $x$ gets closer to $a$, and, so to say, at $x=a$ it is no more approximative.
Below, a function in blue, the tangent in green and the difference in magenta. As you see, the difference decreases very quickly close to the tangency point.

This is not achieved with a different slope.

A: Thought I'd add something with an emphasis on geometry to the excellent answers above. 
Consider a point A on a circle and a point B elsewhere on the circle and draw a line between the two. The line touches the circle in two places. We have a secant line. Select another point B closer to A than the original B and draw another line. Again it intersects in two places, another secant line. Iterate bringing the new Points be ever closer to we get more and more secant lines until B is actually on A and the resulting line 1) intersects the circle at one point, and 2) is perpendicular to the radius through A. We have a tangent to our circle. We can associate a slope to the corresponding line. 
To many curves we can associate a tangent circle, any circle that pass through the curve at only one point. Then the slope of the tangent line to the circle is the slope of the tangent line to the curve. We have the slope of a tangent line without calculus. 
Consider the parabola $y=x^2$. Let's create a circle that intersects it at only one point. 
$(x-a)^2+(x^2-b)^2=r^2$
$x^2+a^2-2ax+x^4+b^2-2bx^2=r^2$
$x^4+(1-2b)x^2-2ax+(a^2+b^2-r^2)=0$
Under what conditions does this have only one solution on the parabola? 
I'm thinking we let $(x_0, x_0^2)$ be our point on the parabola. This means that $x_0$ is a solution of our quartic. We want one unique real root so we can't have 4 complex roots. Complex roots come in pairs so if we have one real solution, we must have at least one more. If we want it to be unique, it has to be a repeated root. So we divide the quartic by $x^2-2xx_0+x_0^2$. 
This yields a quotient of : $x^2 +2x_0x+(3x_0^2-2b+1)$
The remainder has two terms, a linear one and a constant one. 
$$2x(2x_0^3+(1-2b)x_0-a))=0$$
$$3x_0^4+(1-2b)x_0^2-(a^2+b^2-r^2)=0$$
Let $y_0=x_0^2$. We can rewrite these equations:
$$2x_0(y_0-b)+(x_0-a)=0$$
$$3y_0^2+(1-2b)y_0-(a^2+b^2-r^2)=0$$
We can prove without calculus that the slope of the tangent line to a circle at point $(x_0,y_0)$ that is centered at $(a,b)$ is $-\frac{x_0-a}{y_0-b}$. So the first equation tells us that the slope is $2x_0$, the same value given by taking a limit. 
A: Well, if you have two points $(x_1,y_1)$ and $(x_2,y_2)$ in the plane, then the slope of the unique line through these points is
$$ m = \frac{y_2-y_1}{x_2-x_1}.$$
If you consider a (differentiable) function $f:{\Bbb R}\rightarrow{\Bbb R}$, then the slope of the line between $(x_1,f(x_1))$ and $(x_2,f(x_2))$ is
$$ m = \frac{f(x_2)-f(x_1)}{x_2-x_1}.$$
If you take the points $x_0$ and $x$ at the x-axis, then consider the quotient
$$\frac{f(x)-f(x_0)}{x-x_0}$$
when $x$ moves to $x_0$: $x\rightarrow x_0$.
Then this quotient becomes (in the limit) the slope of the tangent line of $f$ at the point $x_0$. This is particularly easy to understand if you draw a picture.
Denote the slope in the limit as $f'(x_0)$. Then the above quotient gives
$$f'(x_0) = \frac{f(x)-f(x_0)}{x-x_0}$$
and so the equation of the tangent line
$$f(x) = f'(x_0)(x-x_0) + f(x_0).$$
