My understanding is FIFO is first in first out, so packets arrive packets leave, so in case of congestion, you will have whats called tail drop.
Fair-queue what it does is that small packets are queued out first than bigger packets, lets say a telnet packet is queued out first than an HTTP packet.
IE instructors probably can give you a more accurate description here
I believe this feature is for links up to 1,5Mb but to be honest you are ok enabling this feauture in links till 2MB Over that link banwidth it would kill the router as the process would just go really high. Once by mistake I enabled it in a 6 MB ppp multilink at work in a busy link, needless to say I cut myself out :P and saw a red node in the screen. It was actually funny, because my boss was testing the SDM in that router at the same time, so of course i said: "YEP THAT MUST HAVE BEEN YOU. LOL"
Ricardo Martins
CCIE#23373 (R&S)
www.ccie23373.com