I do not like UDK. It takes long to create stuff, and its more or less limited to shooters. You can do other games on it, but that requires more work.
I do not like working in UDK. It has nice lightning and all, but it is not really what we wanted.
Crynengine is much nicer, easy to work with and you can get great results in no time. We would have liked to work with Cryengine, but we decided for Unity.
Why? Well... Unity is more or less the only Engine which had a good network documentation. There is almost no information about Cryengine and networking, some goes for UDK, and all UDK and Cryengine projects we saw were tailored for 64 or less players.
Besides that, Unity has a great asset store, making it easy to buy and integrate new features, models, sounds etc. It is a heaven for Indie Developers.