Since this question is asked often enough, let me add a detailed solution. I'm not quite following Arturo's outline, though. The main difference is that I'm not re-proving the Cauchy-Schwarz inequality (Step 4 in Arturo's outline) but rather use the fact that multiplication by scalars and addition of vectors as well as the norm are continuous, which is a bit easier to prove.

So, assume that the norm $\|\cdot\|$ satisfies the parallelogram law
$$2 \Vert x \Vert^2 + 2\Vert y \Vert^2 = \Vert x + y \Vert^2 + \Vert x - y \Vert^2$$
for all $x,y \in V$ and put
$$\langle x, y \rangle = \frac{1}{4} \left( \Vert x + y \Vert^2 - \Vert x - y \Vert^2\right).$$ We're dealing with *real* vector spaces and defer the treatment of the complex case to Step 4 below.

**Step 0.** $\langle x, y \rangle = \langle y, x\rangle$ and $\Vert x \Vert = \sqrt{\langle x, x\rangle}$.

Obvious.

**Step 1.** The function $(x,y) \mapsto \langle x,y \rangle$ is continuous with respect to $\Vert \cdot \Vert$.

Continuity with respect to the norm $\Vert \cdot\Vert$ follows from the fact that addition and negation are $\Vert \cdot \Vert$-continuous, that the norm itself is continuous and that sums and compositions of continuous functions are continuous.

*Remark.* This continuity property of the (putative) scalar product will only be used at the very end of step 3. Until then the solution consists of purely algebraic steps.

**Step 2.** We have $\langle x + y, z \rangle = \langle x, z \rangle + \langle y, z\rangle$.

By the parallelogram law we have
$$2\Vert x + z \Vert^2 + 2\Vert y \Vert^2 = \Vert x + y + z \Vert^2 + \Vert x - y + z\Vert^2 .$$

This gives
$$\begin{align*}
\Vert x + y + z \Vert^2 & = 2\Vert x + z \Vert^2 + 2\Vert y \Vert^2 - \Vert x - y + z \Vert^2 \\
& = 2\Vert y + z \Vert^2 + 2\Vert x \Vert^2 - \Vert y - x + z \Vert^2
\end{align*}$$
where the second formula follows from the first by exchanging $x$ and $y$. Since $A = B$ and $A = C$ imply $A = \frac{1}{2} (B + C)$ we get

$$\Vert x + y + z \Vert^2 = \Vert x \Vert^2 + \Vert y \Vert^2 + \Vert x + z \Vert^2 + \Vert y + z \Vert^2 - \frac{1}{2}\Vert x - y + z \Vert^2 - \frac{1}{2}\Vert y - x + z \Vert^2.$$

Replacing $z$ by $-z$ in the last equation gives
$$\Vert x + y - z \Vert^2 = \Vert x \Vert^2 + \Vert y \Vert^2 + \Vert x - z \Vert^2 + \Vert y - z \Vert^2 - \frac{1}{2}\Vert x - y - z \Vert^2 - \frac{1}{2}\Vert y - x - z \Vert^2.$$

Applying $\Vert w \Vert = \Vert - w\Vert$ to the two negative terms in the last equation we get
$$\begin{align*}\langle x + y, z \rangle & = \frac{1}{4}\left(\Vert x + y + z \Vert^2 - \Vert x + y - z \Vert^2\right) \\
& = \frac{1}{4}\left(\Vert x + z \Vert^2 - \Vert x - z \Vert^2\right) +
\frac{1}{4}\left(\Vert y + z \Vert^2 - \Vert y - z \Vert^2\right) \\
& = \langle x, z \rangle + \langle y, z \rangle
\end{align*}$$
as desired.

**Step 3.** $\langle \lambda x, y \rangle = \lambda \langle x, y \rangle$ for all $\lambda \in \mathbb{R}$.

This clearly holds for $\lambda = -1$ and by step 2 and induction we have $\langle \lambda x, y \rangle = \lambda \langle x, y \rangle$ for all $\lambda \in \mathbb{N}$, thus for all $\lambda \in \mathbb{Z}$. If $\lambda = \frac{p}{q}$ with $p,q \in \mathbb{Z}, q \neq 0$ we get with $x' = \dfrac{x}{q}$ that
$$q \langle \lambda x, y \rangle = q\langle p x', y \rangle = p \langle q x', y \rangle = p\langle x,y \rangle,$$
so dividing this by $q$ gives
$$\langle \lambda x , y \rangle = \lambda \langle x, y \rangle \qquad\text{for all } \lambda \in \mathbb{Q}.$$
We have just seen that for fixed $x,y$ the continuous function $\displaystyle t \mapsto \frac{1}{t} \langle t x,y \rangle$ defined on $\mathbb{R} \smallsetminus \{0\}$ is equal to $\langle x,y \rangle$ for all $t \in \mathbb{Q} \smallsetminus \{0\}$, thus equality holds for all $t \in \mathbb{R} \smallsetminus \{0\}$. The case $\lambda = 0$ being trivial, we're done.

**Step 4.** The complex case.

Define $\displaystyle \langle x, y \rangle =\frac{1}{4} \sum_{k =0}^{3} i^{k} \Vert x +i^k y\Vert^2$, observe that $\langle ix,y \rangle = i \langle x, y \rangle$ and $\langle x, y \rangle = \overline{\langle y, x \rangle}$ and apply the case of real scalars twice (to the real and imaginary parts of $\langle \cdot, \cdot \rangle$).

**Addendum.** In fact we can weaken requirements of Jordan von Neumann theorem to
$$
2\Vert x\Vert^2+2\Vert y\Vert^2\leq\Vert x+y\Vert^2+\Vert x-y\Vert^2
$$
Indeed after substitution $x\to\frac{1}{2}(x+y)$, $y\to\frac{1}{2}(x-y)$ and simplifications we get
$$
\Vert x+y\Vert^2+\Vert x-y\Vert^2\leq 2\Vert x\Vert^2+2\Vert y\Vert^2
$$
which together with previous inequality gives the equality.