In order of complexity you have
Xpresso (plattform independent nodebased expression system)
COFFEE Scripts (plattform independent scripts that can be either created by recording action or edited directly. finished scripts can be docked in the interface just like any other CINEMA 4D function)
COFFEE Expressions (plattform independent Java like language for expressions)
COFFEE Plugins (plattform independent Java like language for plugins)
C++ API / SDK (plattform dependent but with a highly consistent SDK between plattforms)
The C++ API is very complete, in fact practicaly all modules of CINEMA 4D made by MAXON are based on the API and so is much of the core stuff.
A Python implementation is currently done by a plugin developer.
Not very much. Xpresso and COFFEE are managable for by far the most users. If you have some C++ experience the CINEMA 4D API shouldn’t be to difficult to get into, it is well documented and there is free support for it on www.plugincafe.com
No idea, maybe check on this over at plugin cafe.
A Linux version is only available to studios under special contract.

