A (loadable) kernel module allows to extend the functionality of the kernel (new hardware, Filesystem, system calls) or modify the behavior of the kernel at runtime (without restarting the kernel) by inserting or removing special code into/from the kernel.
Modules that are listed in a /etc/modules-load.d/*.conf file are automatically loaded when the system starts up.