When comparing Duality vs Unity 2D, the Slant community recommends Unity 2D for most people. In the question“What are the best 2D game engines?” Unity 2D is ranked 7th while Duality is ranked 30th. The most important reason people chose Unity 2D is:
2D game creation was a major feature request from the Unity community and was added with version 4.3. 2D is provided in both the Pro and Free distribution of Unity.
Specs
Ranked in these QuestionsQuestion Ranking
Pros

Pro Open source
The full source code is available on GitHub, where the framework is actively developed. All of the editor, core and plugin code is written in C#.

Pro Great editor
Duality includes a powerful visual editing system that can be used for previewing, integrating, editing and testing game content.

Pro Live reload of code and assets

Pro Very extensible
Because both Core and Editor are completely plugin-based, Duality not only incorporates a clean and modular design, but is also very extensible - even if it wasn't Open Source. In fact, most of the standard editing capabilities comes in form of Editor plugins.

Pro Built-in physics and lighting

Pro Friendly to version control systems
It can be configured to serialize all data in a text-based format, which has been structurally optimized for version control systems.

Pro Used in commercial projects
It has been used in a production environment without burning the place to the ground. Supposedly artist-proof editor workflow with an API for tailoring the system to fit your team.
Pro Built into Unity 4.3+
2D game creation was a major feature request from the Unity community and was added with version 4.3. 2D is provided in both the Pro and Free distribution of Unity.
Pro Integrates with Mecanim
Mecanim brings state machines and blending to 2D bone animation. The state machine editor allows for designers and programmers to visually create a Finite State Machine (FSM) to control when animations should play. Mecanim also allows for blending so an animation can transition smoothly between two states without the need of in between frames made by an animator.
Pro Sprite Sheet and Bone based animation supported
Both types of 2D animation for game development are supported in Unity’s system and can be used interchangeably in the timeline.
Pro Easily change sprites dynamically
Usually used for character customization, programmers can change any sprite in a bone animation at runtime easily by referencing the bone and loading the new sprite from the resources folder.
Cons
Con Visual Studio required
To have possibility for scripting you have to download entire Visual Studio and spend 10 GB of free space
Con Requires windows for development
Con Lacks critical features
- Vertices can't be animated, so you can't have ANY organic feel (like... lungs breathing).
- Parent bone can't be animated without affecting the children. This is especially impeding for organic feel, again.
- No option to show & unshow assets (or it is hidden), like for switching weapon on your character for exemple.

Con Poor script interface for texture atlases
Accessing individual sprites within an atlas texture is possible at runtime, but requires use of the Resources folder subsystem.
