There isn't a huge concern with which one you use.
Its quite common to use dmd for development, and ldc for release for
example.
They all share the same frontend, so they really only differ between
them by their glue code to the relevant backend and some modules in
druntime that are optional. Oh and inline assembly, although there is
some compat code in ldc/gdc for dmd style.
If dmd dies, so does ldc/gdc basically. Each one sees active development
although gdc only has one developer. Ldc keeps up with the dmd releases
pretty well.