Bigloo has the best FFI, hands down, it's simple, it offers mapping, and doesn't require you write chunks of C for each definition. It's also slightly easier to call from, and embed in, C, in my experiments.
Bigloo has better potential performance, due to the strict typing abilities.
Gambit has the best performance, this is probably debatable though, at least according to the benchmarks I've seen.
Gambit also has the best portability, bigloo and chicken only 'mostly' work on win32 - bigloo's socket support has some annoying bugs on win32, for example, and I've had problems with chicken even compiling properly on win32, often failing to find compilers, etc.
Whether Chicken or Bigloo has the best built-in module system is debatable, personally I'd prefer bigloo's over the two. Gambit's lack of a built-in module system is offset by 'black hole' which is progressing nicely, and is possibly better than both bigloo's and chicken's, in the long term.
License wise, Gambit is dual (LGPL and Apache), Chicken is BSD and Bigloo is LGPL. All are pretty much equal, really, from an end-user's point of view and none of them should impart any restrictions on any programs you create with them, as far as I can tell.
Edit: I knew I forgot something, I didn't mention the '4th' option - JazzScheme. Which is really just a version of Gambit with an integrated IDE, a module system similar to bigloo's, and a bunch of pre-built library mappings (Gtk, OpenGL, and a bunch more, iirc). It has potential, but for me, I don't like to have to use a provided IDE, I prefer emacs, and the 'command line' version of jazz isn't really finished yet.