Linux kernel is the lowest level of replaceable software that can interface with the hardware in your computer. It is sometimes referred to the core, or internals of the operating system.
It interfaces all of your software applications that are running in user space down to the physical hardware, and allows processes to get information from each other using inter-process communication (IPC) mechanism. It provides basic services for all other parts of the system and distributes system resources.
While the user interface is the outermost part of an operating system, kernel is the innermost. Its typical components include interrupt handlers, scheduler, memory management and so on. User applications communicate with kernel using system calls, typically by calling functions in a library (e.g. C library) that depends on the system call interface to instruct kernel to act on the behalf of the calling application.