Like any engine, Unity has its unique advantages and drawbacks. A small dev team can cover a lot of ground using Unity, and some programming tasks are actually quite pleasant with it. Some people have asserted in this thread that Unity's performance is deficient, but it's easy to write games that run smoothly on a large gamut of devices, whereas UnrealEngine's IDE and even almost empty scenes made with it run at 5fps on my maxed-out 2012 iMac. It might scale better, but Unity beats it handsdown in most low and medium complexity workloads.
These are reasons why Unity is well liked among indies, and not necessarily only among non-technical people either. But if you have many millions to burn, other engines give you more room for customization, have more high-class sales teams, and have a workflow that is optimized to be familiar to artists with a AAA background.