i think it's all been said, but my top reasons are:
* templating system (including ad_form, tight integration with db_ procs)
* many existing modules to play with
* existing architecture that is a good point between being rigid and flexible from which to launch your own apps
* package manager encourages feeding apps back to the community
* commercial quality design and implementation
that last point is a big one. We are in a very interesting situation I think. We are now able to move more flexibally to a better solution than a single commercial entity would be - but we are blessed with a very well designed core set of ideas that would probably not have been designed so well had ACS been developed from scratch as an open source product.