Modules get loaded when needed whereas if you compile support into the kernel it is always available..... i.e. if you need something often - compile it in.... if you rarely need it - load it as a module.