kernels; the function has been explained so i wont go there. there are kernel settings that cant be changed once compiled that effect performance and battery life, often making one better hurts the other, kernel hz will affect the snappiness, some kernel devs like to put out 2 or more versions depending on the users preference. also there have been many mods made for the i9000, i9000 devs typically dont make ports for the other phones so the code is made available for other devs to include in there own kernels. part of the reason for soo many is that things are constantly developing but some people like what has been out there for a while. there are also a number of compiling tweeks that one developer or another may prefer.
some kernels have stock recovery 2e or 3e, some have cwm recovery some have steam recovery, some have a modded cwm recovery. cwm recovery and steam give you access to the rom backups (nandroid) and some other features, steam has a touch screen interface but the modded cwm versions have similar functionality with a hardware button interface.
lagfixes; lagfixes are incorporated into the kernel. some have "voodoo" which is ext4 and is like what non samsung android phones often have. voodoo only has a couple options and most run it default. voodoo lagfix options may be incorporated into the recovery or handeled by the presence of a folder/text file in the voodoo folder.
there is also ulf (universal lagfix/ultimate lagfix). ulf lets you choose between jfs, ext4, ext3, ext2 and rfs file systems on each partition. it also lets you do the earlier ext2 loopback like one click lag fix. it is total overkill with options an the benifits of each is subject to opinions and anecdotal observation. but if yo specifically want jfs it is the only option available on the captivate right now.
wifi; different wifi drivers cause problems with certain routers because of a security measure. once a couple fixes for this were found new kernels appeared.
other "voodoo" features; supercerio is the developer of voodoo and is obviously a talented dev. he has created a color/brightness/sharpness fix for the galaxy s line but the port to captivate kernels took some time to come about. some kernels have it and some don't. there is also voodoo sound which lets you change the amp output for the headphones.
overclock/undervolt; there was at one time development on this for captivate kernels in 2.1. it was stable but a lack of captivate froyo source kinda killed it. also there was no interface for it, changing settings was done on in a text file that you had to write into a folder with a script, people had trouble understanding it. many kernels now are i9000 ports but the undervolt code often causes "charge death" some prefer not to overclock do to this instability, but then glitterballs came up with a fix. glitterballs prefers the overclock settings to be "mild" they really arent in reference to a pc though, 20-28% is significant but still there are others that make 30-60% overclocks available. the overclock setting on some of these kernels is a multi stage setup and isnt that user friendly involving an app and configuration files. there are also sceduler differences that can balence battery life and speed but i think samsungs settings are just fine
basically if you want overclock i recomend glitterballs work. if youre phone handle 1300+mhz you must go elsewhere if you "need" the max your phone can handle.
if you dont care for overclock there are many other things to look at. kernel hz set at 500 is snappy but you may prefer battery life and find one set at stock or 300hz
if color sound is important to you and thats a big reason to by a galaxy s then you want voodoo color and sound. im not gonna talk about files systems and lagfixes because despite the apparent differences in quadrant the every day results are up for debate.
modems; im not gonna tell you to match modem to kernel because i never found that to be true.. what i will tell you is that if you use bluetooth and "need" hsupa(over rated) then dont choose a north american captivate rom other than the armani based roms. there are 5 poular ones for non captivates phones and many more that work as well, choose at random for all i care, the biggest factor is gps performance and none of them do poorly, i recomend jl3 but kp1 can work better with some playing around, it seems to not give a stable position because it constantly updates stalites, the list is constantly changing in lbs test mode but it does get more satalites in my experience. others are jk3/4 and jl2(different phone that jl3) some say in there area jl2 gets better transfers but i dont find that to be true here.
ported roms; i9000/m and t959/d ports are great and at this time dont give up too much, they work with canadian t959d and i9000m modems as well as many other oversees modems that have the att 850 band . but on some, not all but some ports you may experience sleep death. it's a captivate issue and captivate roms since jf7 have a fix incorperated, i have mostly good results on the ported roms but 1 or 2 have given me sleep death.
captivate roms; work great! use as is or add a kernel with x,yand z features. with a captivate rom you give up either bluetooth or hsupa but hsupa is over rated on a phone unless you tether or upload files directly from your phone, it does help snappiness loading web pages but seriously my isp gives me 30% the upload bandwidth that i get with hsupa and i only see about 50% of the hspa potential in my area. my 3g connection gives me 300kbps and my isp gives me 600kbps. i think non hsupa is fast enough most of the time.
to the op, titanium backup does a backup of your apk's and data for those apps. it is not recomended to restore all system data if a new rom has a different base rom. this is what to use to restore apps after a flash, chose the restore apps and data setting, if you have problems factory reset and restore apps only.
cwm backs up the rom. it is a fall back incase a flash fails. you need cwm recovery either in the kernel or in an "update.zip" in the root of the internal sdcard. if you have 2e recovery or modded 3e recovery in the kernel you need to reinstall packages to get there from the update.zip. you may need to try twice. you navigate with the volume and select with the power button.
if you have a stock 3e recovery (rare now that there are altenatives, unless you flashed a stock leak or rogers rom as is) it will fail, you will need to odin/heimdal/neldar sgskernel flasher app flash another kernel to reach cwm recovery.
root explorer helps you reach the system files. if you think you need it then get it but it is really most useful for making tweeks or installing themes, some of that is better done in a script via update.zip or remotely via adb so you may not want or need it.