All Drivers are modules. Not all modules are not drivers.
Modules can be inserted at runtime. Modules/Drivers can be statically compiled along with the kernel also.
Typical module init has
module_init(init_fn);
init_fn()
{
/* some code */
}
The same module can be made a driver
module_init(init_fn);
init_fn()
{
device_register(&device);
/* some code */
}