You can think of IKernelLink as a "decorator" for IMathLink. It builds on top of IMathLink by providing extra capabilities. If you have an IMathLink object, you can use this method to construct an IKernelLink implementation out of it.
Very few programmers will ever use this method. It is intended mainly for developers who are creating their own IKernelLink implementations. They only need to write the functionality of an IMathLink, and then they can use this method to get the extra features of an IKernelLink for free.