I have been looking for a sound answer to to this dilema, to routeProvider or not to.
It appears as if $routeProvider is soon going to be discontinued and replace with $
After a very long time we decided to bite the bullet and migrate from 1.1.1 to 1.2. At the same time we realized how limited $routerProvider really is so we went with ui-router. So far, we love it, it allows you to do some complex nesting in the views plus add a bit more structure to your app, for example, in $stateProvider you can define onEnter and onExit which allows you to modify your data and restore it upon exiting, you can also transitionTo state which is extremely powerful. I would vote for ui-router to be part of Angular core and even replace $routeProvider. I hope this helps you made up your mind. $routeProvider still works, if you have a basic app or demo page.
We started with $routeProvider and moved to $stateProvider to leverage some of the features that ui-router provides. When we moved the migration was absolutely trivial. Having said that, ui-router is still very early (from their GitHub page):
Warning: UI-Router is pre-beta and under active development. As such, while this library is well-tested, the API is subject to change. Using it in a project that requires guaranteed stability is not recommended.
Stick with $routeProvider until you decide you need something else. Until then, make sure you are getting good test coverage so that shifts like that aren't too big of a concern.