How ... compile a linux kernel
Yes, I would agree with reddaz ... you should only jump into building kernels once you are a little more experienced with Linux.
You should have a good grasp of how hardware is presented in Linux as you could easily build a kernel that fails to drive your hardware correctly.
The generic kernels in most distros have almost everything enabled.
Customizing kernels are for those that want to decrease the size of the kernel image or require special configuration for particular hardware.