What do you like best?
Unity is a really simple and versatile engine. You can make any kind of game/simulation/visualization with it. You can make a simple 8-bit platformer or a AAA graphics RPG. Unity lets you do everything without much work.
The Components system is just a great game engine entity model. There are methods raised in each MonoBehaviour for many many different kinds of events, which can be used for a variety of different tasks. Unlike other systems, Unity's Component system allows you to attach as many MonoBehaviours as you want to a GameObject (game engine entity) which is really great for code modularity and cleanliness.
Unity also has a great great great Asset Store, one of the best things about Unity. You can find beautiful art, well made editor tools and efficient and optimized AI, camera scripts, animations, everything. You can almost create a whole game only using products bought on the Asset Store. It is also a great source of income for people who have some awesome code or art that they want to share. The Asset Store publisher experience is clean and makes it easy to submit packages which go through a stringent approval process.
The highly extensible editor makes it easy to create a small script that will, say, create 1000 clones of the selected objects with the click of a button even without playing the game.
And then there's the number of platforms Unity supports. You are able to publish to more than 10 platforms provided that you have the SDKs to do that. Android, iOS, PCs (including Mac and Linux), Xbox, PS, PS Vita, Wii U, Native VR support and the list goes on.
What do you dislike?
Although the Personal (Free) edition has support for all game engine features and is completely free to publish games with, there are some limitations like no custom splash screen (that's the only hindrance to some people). Unity 5 has a beautiful splash screen though, and if you can live with it, then you don't need to look further.
Unity is a bit pricey. The Unity Professional license is 1500$ or 75$/month, and you have to pay the same amount for each Android Pro and iOS Pro licenses. Unity Pro without Android/iOS Pro will not use your custom splash screen, which is why you'll have to spend *a lot* (if you are an indie studio) to be able to publish on mobile with custom splash screens. (You could probably get away with purchasing the licenses for 1 month and publishing the game in that month.)
Recommendations to others considering the product
Unity is altogether a great product, and if you're looking to develop a game on many platforms Unity is definitely the one to use. If you intend to develop a Crysis 3 like super graphics game only on PC and/or Console, then you might be better off with Unreal Engine or CRYEngine (or the new Amazon Lumberyard). But Unity still can deliver quite stunning graphics. Just check the link below out and check the features. If you do decide to go with Unity, you won't be disappointing, unless you come from another game engine, in which case the fanboyism may kick in (happens to me too).
What business problems are you solving with the product? What benefits have you realized?
Working on all kinds of things: A 2D platformer, a terrain painting tool, vehicle AI is a dream with Unity.
The Asset Store really cuts down on man hours for not a lot of money. You can get a tool that will generate and texture beautiful terrains for 45$ on the Asset Store. (Sorry, designers).
Modularity with the component system really helps in maintaining the code base. I can have different scripts for moving and setting the target Transform, Obstacle Avoidance (OA) and the actual vehicle controller for my AI system and put them all on the same car.
I don't even need to make the user of my AI system do anything. I can just ask them to click a button in the highly extensible editor and everything including positioning the OA detectors and setting the required variables through code.