The advantages are based on what you want your phone to do. Considering the greatest percentage of Android phones out there are completely stock, rooting isn't necessary to have a phone that performs all the functions those functions they require without rooting.
That said, rooting offers many potential advantages, some are minimal nuisance removals, others allow greater functionality. Sometimes that's greater functionality comes with some added risk or reduced reliability.
For instance, a common purpose for rooting is to gain access to the wireless tethering function without having to pay for it from your cellular carrier. Virtually all these phones are capable of tethering wirelessly (giving internet access to other devices by using your phone as a wireless access point), so it's not something that your cellular carrier is doing on their end to make this happen. Instead it's what they put in place on the phone to prevent it unless you pay a service fee to unlock it.
By rooting you gain access to the key in the system that prevents this function and allows you to circumvent the carrier's lock-down. The risk is that your carrier detects this by way of your spike in data usage and since it's a violation of your Terms Of Service (TOS), agreement.
Another reason for rooting is to remove or disable what is commonly called bloat, the applications that are pre-installed by the carrier on the phone that you buy, many of which, if not most of which you will never use and wouldn't want to. The problem with the bloat is that it takes up space on the phone and some of it runs in the background tying up the operating system and making the phone less responsive to other applications which all fight for the same share of the CPU.
Still other purposes are such as to install an Ad Blocker that will prevent most, if not all advertisements from popping up on your phone. There are Ad Blockers that work without root, but the ones that require root do a more complete job of preventing these nuisances.
The most aggressive purpose for having rooting capability is to be able to "flash", or in layman's terms install other versions of the operating system (ROMs), on to your phone. Some of these custom ROM versions may be slight tweaks to the stock version whereas others are signifigant or major overhauls and some, almost complete rebuild from the ground up by our most talented developers in the industry. Cyanogen is probably the most well known of all of them and he has his own version of the Android operating system, Clockworkmod that now can be flashed and runs on a large number of Android phones. And now he even has a custom manufactured phone, The Oppo N1 (
Cyanogen Inc. Oppo N1 that is branded with his name and comes pre-installed with his custom Android Operating System.
By installing custom ROMs on your phone you can make the phone work completely differently than it was intended to, do things that perhaps the manufacturer and never even considered, make the phone more powerful and more responsive, and at the same time allow you to customize the phone to your particular likes.
There are lots of other ways rooting can provide greater flexibility and greater enjoyment for your device, but rooting and flashing custom ROMs comes with their own risks. Flashing can end badly and result in Bricking (causing to become non-functional), but the real question has to be in your own minds does the phone do what you needed to do now, or are you running into situations where you'd like it to do things it can't do and if so are you willing to take the risk of potentially violating your Terms Of Service agreement with your carrier or potentially doing damage to your phone and maybe even turning it into a big paper weight.