Can someone explain to me the big practical difference between SHA-256 and SHA-512, other than the larger digest for the latter?
SHA-256 block size (input) is 512 bit and SHA-512 block size is 1024 bit.
SHA-256 digest (output) is 256 bit and SHA-512 digest is 512 bit.
The initialization constants are different.
SHA-256 uses 32 bit "chunks". SHA-512 uses 64bit "chunks"
SHA-256 has 64 rounds (iterations of the algorithm), SHA-512 has 80.
Other than that they pretty much are the same. Same basic algorithm.