Rooting is a device hack that provides users with unrestricted access to the entire file system of their mobile devices. Rooting is useful for Android users if their wireless carrier imposes any additional restrictions on using the devices, such as preventing tethering.
It gives you administrator access to your device, like being the head person on a computer or when you go to run a program and run it as administrator, it allows you to.
It also enables you to be able to get rid of apps on the phone that the carrier puts on it. Helps free up space on your device.
You can also use the built in tether app but you will have to first root your phone then get Titanium backup from the market (paid version) and freeze (disables) the tether app that tells the company that your tethering, or if you really want to, delete it off the device. Im using a free app for mine instaed of doing the Titanium way.
But when you root your device, you arent able to update your phone software wise, such as over the air updates or even ones you do yourself, unless you unroot it. Currently my phone has an update and I have to unroot my phone, do the update, reroot and I am good, that is making sure that I can root the update and I can.