Isometries of the sphere $\mathbb{S}^{n}$
Here's a different approach than the one Qiaochu is suggesting, assuming you have proved that every point in a Riemannian manifold has a normal neighborhood: A neighborhood for which any two points in the neighborhood can be connected by a unique minimizing geodesic.
First, a lemma:
Suppose $M$ is a (connected) Riemannian manifold and $f:M\rightarrow M$ is an isometry. Suppose further that for some $p\in M$, that $f(p) = p$ and $d_p f = Id$. Then $f = Id$.
Proof (sketch): Let $X \subseteq M$ with $X = \{q\in M|$ $f(q) = q$ and $d_q f = Id \}$. Then $p\in X$ by definition so $X$ is nonempty. We will show $X$ is both open and closed.
$X$ is closed because it's defined by equations. $X$ is open becuase if $q\in X$, using a normal neighborhood $U$ and the fact that $f(exp_q(tv)) = exp_{f(q)}(t$ $d_q f$ $v)$ shows all points $r\in U$ satisfy $f(r) = r$. If $d_r f \neq Id$, draw a small triangle connecting $r, q$ and $exp(tv)$ where $d_r f v \neq v$ and $t$ is very small. Appealing to the fact that vertices of the triangle have unique minimizing geodesics between them will give a contradiction, showing $d_r f = Id$.
Thus, $X$ is both open and closed and so, since $M$ is connected, $X = \emptyset $ or $X = M$. But $p\in X$, so $X = M$. But this says that $f(q) = q$ for all $q\in M$ (and that $d_q f = Id$, but we don't really care about that), so $f$ is the identity map.
With this lemma proved, we get a pretty easy corollary: An isometry is determined by where it sends one point and what its differential does at that point.
This in turn gives a potential solution to our problem: If you can show
1) Every linear orthogonal map is an isometry of $S^n$ and
2) Given any $p, q \in S^n$, and any o.n. bases $\{v_1,...,v_n\}$ and $\{w_1,...,w_n\}$ of $T_p S^n$ and $T_q S^n$ respectively, there is a linear orthogonal map taking $p$ to $q$ and $\{v_1,...,v_n\}$ to $\{w_1,...,w_n\}$,
Then, it follows that you've found all of the isometries of $S^n$.
The proof of 1) is straightforward owing to the fact that the linear orthogonal matrices preserve the metric on $\mathbb{R}^{n+1}$ and $S^n$ inherits it's metric from $\mathbb{R}^{n+1}$.
The proof of 2) is slightly more involved, but not so bad: First, prove that you can assume wlog that $p = q = $ north pole and that $\{v_1,...,v_n\} = \{e_2,...,e_{n+1}\}$ using the standard o.n. basis $\{e_1,...,e_{n+1}\}$ of $\mathbb{R}^{n+1}$. From here, if you think about it, given $\{ w_1,...,w_n\}$, you can explicitly write down the linear orthgonal matrix you want.
Trivially any orthogonal map restricts to an isometry of the n-sphere. Now suppose you have $f: \mathbb{S}^n \rightarrow \mathbb{S}^n$ an isometry. If it's gonna be the restriction of an orthogonal map $F: \mathbb{R}^{n+1} \rightarrow \mathbb{R}^{n+1}$, a very reasonable candidate for $F$ is the map: \begin{equation} F(x)=f(\frac{x}{|x|})\cdot |x|, x\neq 0; F(0)=0 \end{equation} Let's prove $F$ is an orthogonal map. The distance between any two distinct points $x$, $y$ in $\mathbb{S}^n$ is just the length of the shortest of the two arcs of great circle joining them (this does not need any connection theory or geodesics, just observe that this great circle is the intersection of $\mathbb{S}^n$ and the plane $\pi$ containing $0_{\mathbb{R^{n+1}}}$, $x$ and $y$, so for any other curve joining $x$ and $y$ in $\mathbb{S}^n$ not contained in $\pi$, its tangent vector will have a nonzero component normal to $\pi$, hence you can keep minimizing its length without moving the endpoints). Since $f$ is an isometry, it preserves the length of curves, so it preserves the distance in $\mathbb{S}^n$. What happens it that the length of this arc of great circle is the (smaller) angle in radians formed by $x$, $y$. Now (make a drawing if needed) take any $p$, $q$ in ${\mathbb{R^{n+1}}}$, since $F$ preserves the norm, the triangles formed by $0_{\mathbb{R^{n+1}}}$, $p$, $q$ and $0_{\mathbb{R^{n+1}}}$, $F(p)$, $F(q)$ are congruent (side-angle-side and this became Plane Geometry!). Hence, $F$ preserves the distance in ${\mathbb{R^{n+1}}}$ and \begin{equation} \langle F(p),F(q)\rangle=\frac{1}{2}(|F(p)|^2+|F(q)|^2-|F(p)-F(q)|^2)= \frac{1}{2}(|p|^2+|q|^2-|p-q|^2)=\langle p,q\rangle. \end{equation} So, $F$ also preserves the inner product in $\mathbb{R^{n+1}}$. Observe now that since $\mathbb{S}^n\cup\{0\}\subset \text{Im }F$, $F$ is onto. Thus, for all $p,q,r\in\mathbb{R}^{n+1}$ and $\alpha, \beta\in\mathbb{R}$ \begin{equation} \langle F(\alpha p + \beta q)- \alpha F(p)-\beta F(q),F(r)\rangle = \langle \alpha p + \beta q,r\rangle - \alpha \langle p, r\rangle -\beta \langle q,r\rangle=0. \end{equation} Then, $F$ is a linear orthogonal map.
Any isometry on $\mathbb{S}^n$ is the composition of atmost $n + 1$ reflections. I think it is followed from Cartan–Dieudonné theorem.Please tell me if I am wrong.