As far as I know there are no algorithms to calculate limits.
Also the standard complexity-theory arguments about why no such algorithm exists, we can also provide some practical examples of limits which are not well understood.
For the first part, go read Senia Sheydvasser's post in The Academic Space; one of his examples is that there is no algorithm for determining whether a series converges or not. So, we can’t even create an algorithm that tells whether there is a limit or not.
Obviously, if we restrict ourselves to just a restricted set of expressions, like rational functions, then the problem is tractable. But usually the reason we’re interested in a reliable algorithm is because the limit we want to take is complicated!
As a concrete example, the Euler–Mascheroni constant is given by a limit:
[math]\displaystyle \gamma = \lim_{n \rightarrow \infty} \left( - \ln n + \sum_{k=1}^n \frac{1}{k} \right)[/math]
But while we know this limit exists, and can approximate its value, we don’t know whether it’s rational or not!