Here's another proof, for those of you who never learned trigonometry
, or just like to collect proofs.
To repeat the assertion, it is that any primitive Pythagorean triple (a,b,c) will be equal to (x^2-y^2,2xy,x^2+y^2) for two natural numbers x and y. First, consider the fact that c must be either even or odd. For the moment, let c be even. Then either a and b can both be even, or both be odd. If a, b and c are all even, then they do not form a primitive triple (they're all divisible by two), so we disregard this case. So a = 2j+1, b = 2k+1 and c = 2m. a^2 + b^2 = c^2, so (2j+1)^2 + (2k+1)^2 = (2m)^2. This yields 4j^2 + 4j + 1 + 4k^2 + 4k + 1 = 4m^2. But this statement says that an integer of the form 4n+2 is equal to an integer of the form 4p, and that's impossible. So, it's apparent that no primitive Pythagorean triple has an even hypotenuse.
Since c must be odd, a and b must be of different parity. Since it doesn't matter, let a be odd and b be even.
Rewriting the Pythagorean theorem, we get b^2 = c^2-a^2 = (c-a)(c+a). We already decided that b is even, so we divide it by 2 and get (b/2)^2 = (c-a)/2 * (c+a)/2.
Obviously enough, c = (c+a)/2 + (c-a)/2, and a = (c+a)/2 - (c-a)/2. So if (c+a)/2 and (c-a)/2 had any common divisors, these divisors would also divide both c and a. But (a,b,c) is a primitive triple, so gcd((c+a)/2,(c-a)/2)) must be 1. Now, I don't know about you, but where I come from, when the product of two numbers is a square and the numbers don't share any divisors, we conclude pretty swiftly that the two numbers have to be squares themselves. And (b/2)^2 is a square, dammit! So we write that (c+a)/2 = x^2, and (c-a)/2 = y^2. We can now write c = x^2 + y^2, and a = x^2 - y^2. Finally, we have (b/2)^2 = x^2*y^2, so b/2 = x*y, and b = 2xy. QEFD