In the most basic sense, "root" refers to the topmost folder in a device's file system. If you're familiar with Windows Explorer, root by this definition would be similar to the C:\ drive, which can be accessed by going up several levels in the folder tree from the My Documents folder, for instance. In Mac OS X and Linux, it would be a / (slash) instead of a C:\ directory.
But unlike Windows, Android has an artificial barrier about halfway up the folder tree—meaning you can only go up so many levels in the file system before you hit a virtual wall of sorts. This is done to prevent novice users from deleting or making changes to critical operating system files that are stored on the other side of this artificial wall.
But if you want to make system-level tweaks to your phone's software, you'll need to be able to modify the operating system files on the root side of this virtual barrier. Being able to fully access and modify these files is known as having "root access" or being "rooted."
There are several different procedures that allow users to gain access to the root directory of their device, and the process of executing one of these procedures is known as "rooting." Depending on the device, rooting can be as easy as installing an app, but some root methods are a bit more complicated and involve connecting the device to a computer and sending terminal commands.
If we consider that root is the topmost folder in a device's file system where all of the files that make up the Android operating system are stored, and rooting allows you to access this folder, then being rooted means that you can change just about any aspect of your device's software.
For instance, bloatware apps that come pre-installed on Android devices are generally stored in the system folder inside of the root directory—normal users can't uninstall these apps, but rooted users can simply navigate to the folder and delete them.
As another example, the vast majority of your phone's main interface is controlled by a single app called SystemUI, which is stored in the root directory. If you know how to program an Android app, you could modify SystemUI to completely change the look and feel of your device. But even if you don't, there are thousands of Android developers who do, so you could simply use root access to replace this file with a pre-modified version.
Aside from manually deleting, modifying, and replacing system files, there are thousands upon thousands of apps that use root access to help you modify your device's software at the press of a button.
As awesome as rooting is, there are definitely a few drawbacks involved. The biggest downside is that most devices will no longer be able to accept an over-the-air firmware update if they're rooted, which means you'll have to manually apply any future updates using Fastboot, Odin, or Smart Switch.
On top of that, there are some potential security risks involved with rooting, but these will never be realized if you exercise a bit of caution. Considering that a rooted user has access to all of the system files on their device, this means that apps the user installs can also gain access to anything on the phone or tablet. This issue can easily be overcome by install installing a root management app like Chainfire's SuperSU, which blocks all access to the root directory by default, and only allows apps to modify these files if the user explicitly grants root access to the app.
Then finally, because of the risks described above, certain apps will simply refuse to run on a rooted device. Generally, this is limited to apps that deal with financial payments or DRM copyright-protected media—most notably Android Pay, Samsung Pay, and the Redbox streaming app.