First, let's clear up some confusion: Contrary to popular belief, you do not actually need to root your phone to flash a ROM—you just need to unlock your bootloader and flash a custom recovery. However, this process usually goes hand-in-hand with rooting—and most custom ROMs come with root access—so what you think of as "rooting your phone" is probably what you're going to have to do first.
Unfortunately, we can't go through this step in detail here, because it's different for every phone! So, I highly recommend
checking out our everything root guide to learn a bit more about what's involved, what all the different terms mean, and what to watch out for. Then, search around sites like XDA Developers for instructions on how to unlock the bootloader of your specific phone, which recovery you should use (usually
TWRP or
ClockworkMod), and how to flash it.
I also recommend rooting your phone during step one, since it'll make the backup process in step two easier—and save you some hassle along the way. A lot of methods and one-click apps will root your phone anyways, so it might be included in the process. Again, this can vary from phone to phone. (If the instructions require you to flash SuperSU.zip, you can refer to step three of this guide for info on how to do that—ironically, it's just like flashing a ROM).
NOTE: Unlocking your bootloader will most likely wipe your phone, and without root access, you won't be able to back up very much. So, save anything you want to keep on your computer—you will have to set up your phone from scratch just this once before continuing.
When you're done, return here and continue to step two for the rest of the ROMming process.
Step Two: Make a Backup of Your System, Apps, and Data
Now that you've got a custom recovery on your phone, the first thing you should do—before you ever make a big change to your system—is back it up. First, we'll make a Nandroid backup, which is basically a image of your current system. That way, if something goes wrong, you can restore your phone to exactly the way it was before you started tweaking. This will save you a lot of hassle if something goes wonky (which, let's be honest, can happen often). To do this:
Reboot your phone and enter recovery mode. This is a bit different on every phone, but usually involves some permutation of pressing the power and volume buttons at the same time.
Head to the "Backup" or "Nandroid" section of your recovery mode. The default settings should be fine. If given the option, give your backup a name that helps you remember what it is (like "Pre-CyanogenMod Backup 01-17-14"). Confirm your backup and let it run.
Wait for the backup to finish. This may take awhile.
I also recommend making a second type of backup: your apps and settings. If you just unlocked your bootloader and wiped your phone, you can skip this step, but any time you flash a ROM in the future, you'll want to back up your apps first, since you may have to wipe your phone before you flash. With a backup, you can easily restore those apps and data after flashing, making the process a lot simpler.
We recommend using Titanium Backup.
This is different from a Nandroid backup because it just backs up the apps themselves, which you can then restore on any ROM you want. Nandroid backups take your entire system as it is, ROM included.
Note that you'll need to be rooted to use Titanium Backup (which is why I recommend you root in step one). To perform a backup in Titanium:
Open Titanium Backup and grant it root permissions if it asks for them. If it experiences any problems with root, it'll tell you right now.
Tap the "Batch" button in the upper right-hand corner (the one that looks like a little checkbox). Scroll down to the "Backup" section and find "Backup All User Apps." Tap the "Run" button. This will back up any apps you've downloaded from the Play Store, and their data. (You can try backing up your system data as well, but I find this usually doesn't work very well).
Wait for it to finish. If you like, you can also sync these to Dropbox
as described here, but you don't have to for this process.
This may seem like a lot of unnecessary backups, but trust me: it's going to save you a lot of time in the long run. Now if something goes wrong, you have a nandroid backup to fall back on and don't have to start from scratch. And, when your ROM flashes successfully, you don't have to start re-downloading and setting up all your apps yourself because you can restore them with Titanium.
Step Three: Download and Flash the ROM of Your Choice
When you've found a ROM you want to try, download it and save it to your phone. It should come in the form of a fairly large ZIP file, so you'll probably want to be on Wi-Fi to download it. You can either download it directly from your phone, or download it on your computer and transfer it over via USB.
To flash your ROM:
Reboot your phone into Recovery mode, just like we did back when we made our Nandroid backup.
Head to the "Install" or "Install ZIP from SD Card" section of your recovery