ui-grid is replacing ng-grid, and support for ng-grid is getting thin as most of the original (2.x) contributors are no longer active, the remaining contributors are almost exclusively working on 3.0 only.
So, I would use ng-grid if:
- you are already using it and don't have any pressing issues that would force an upgrade
- you really need a stable and well tested product
I would use ui-grid if:
- you are starting a new project now, and not intending to be in production for a few months
- you need a feature that ui-grid offers and ng-grid doesn't (such as exporting, importing, state saving), or specific functions that ui-grid offers
- you plan on extensively customising or pushing the limits of the functionality - ui-grid is more customisable and more supportable
- you have tried it and it does everything you want
- you don't need IE support earlier than IE9 (and mostly IE10 and up only)
In general, I'd lean towards ui-grid unless you can't use it for some reason.
Note also that grouping was recently released in alpha.
EDIT: We've also recently noticed that Amazon Web Services are using ui-grid in their console in a couple of places....so I guess that partly answers the question as to whether it's ready for production usage.