Martin R has linked a number of posts, but they are cluttered with many wrong explanations, with few exceptions (such as Henning Makholm's and Gadi A's). Even in this thread, the other posts do not really explain why we can choose to have $x^0 = 1$, even though they give motivation for why we want it so.
Let me emphasize that mathematics is not about wishful thinking. Wishful thinking can lead to ridiculous things like the liar's paradox (for allowing circular reasoning), Russell's paradox (for naive set theory), Quine's paradox (for assuming that a certain statement has a well-defined truth-value without justifying it), and so on.
Similarly here, before we even start asking whether $x^0 = 1$, we have to first define what "$x^0$" means. Hence Henning's answer is the true answer. I want to elaborate a bit more. If you think carefully, you would actually realize that you are unable to define $x^k$ for general $k∈ℕ$ without an inductive/recursive definition, so either way you have to pick an arbitrary base case in your definition. Then clearly the question is whether it is better to start from $x^0 = 1$ or $x^1 = x$. It turns out that the structure of exponentiation is much nicer and simpler with the former choice, which is why things like the binomial theorem, taylor series, combinatorial intepretations and so on all work better if we have $x^0 = 1$.