Why Are There Two Different Common $ 3 \times 3 $ Kernels for the Laplacian?
The Laplacian kernel is used for edge detection, that is a high pass filter. 
The 2D convolution of an image with it will "detect" or highlight big differences between pixel intensities (that is why it has negative values around a bigger positive one).

The basic difference between the kernels you wrote is that the first one will only highlight horizontal and vertical intensity differences in the image, while the second one will also detect diagonal differences.

Another important characteristic is that all its values should add to zero, so that portions of an image which had uniform values should stay uniform after the filtering.