Quick and dirty version:
Read every OC guide you can find, especially those specific to your motherboard, CPU, GPU, etc. Also read product reviews about your stuff, since many of them touch upon overclocking and comment about the results/settings they used. These days there are literally hundreds of fine control/tweaking options in an enthusiast EUFI/BIOS, with millivolt and milliamp and nanosecond precision, but few of us actually know what the hell most of these things really do. In some instances some obscure settings are deliberately cryptic and undocumented because the mobo maker doesn't want to give the competition an edge by sharing the fruits of their own testing/engineering/research. There's essentially a half-dozen or so settings and voltages you need to change to gain fine control of all but the most extreme overclock.
Focus on one part at a time, CPU or RAM kit (or even individual RAM sticks) or one GPU. Don't try to masterfully overclock everything together until you know the thresholds for each component. RAM is a bit tricky (especially with the 4- or 8-stick kits) because there's often one or two borderline weaklings which hold the rest of the sticks down. Be aware that any given CPU can have a range of clock speeds for each core and for each uncore component (most significantly the integrated memory controller, because the iMC will govern maximum RAM capacity/speeds). GPUs are easier to overclock, up to their voltage-locked limits, so long as you can keep them cool and a multi-GPU setup isn't crippled by a slowpoke card. Always start at the bottom and slowly nudge things up, don't attempt to start at 5GHz and work downwards unless you like the smell of burnt silicon (which, I promise, is a smell you will never forget).
These days, almost every part can be overclocked unless it has fully locked-down clocks/multipliers/voltages/etc. To make it run more stable you often need to increment input power/voltage levels, very reluctantly, because this outputs more heat (and strains the part). You need a robust PSU, mobo, and cooling system to get good overclocks, not to mention the overclocked part itself (which is variable and quirky from part to part, ie: "the silicon lottery"). Most parts gain steady performance increases with little additional input voltage, but eventually reach a point where voltages/temps begin to rise exponentially for each further increment in performance, and most parts can actually run at insanely faster speeds with exotic/subzero cooling (which is how the LN2 guys achieve world-class record-breaking OC scores) but in the real world will have a maximum stable overclock dictated by the "sweet spot" between how much (or preferably, how little) voltage you feed in and how much heat your cooler can pull out.
A comprehensive overclocking process requires numerous restarts and, at some point, numerous frustrating (alarmingly sudden) crashes and shutdowns. Many people online (even at these ROG forums) wonder why they get BSoDs or memory errors or all sorts of oddball hardware failures on a daily basis ... in the vast majority of cases it's because they overclocked too high, beyond the stability threshold of their particular parts. No part operated at factory rated spec is ever 100% stable (although at least the manufacturer will replace a really bad part with another), and parts operated outside spec (overclocked) are certainly never 100% stable either. It's up to you how far you wanna push, how hot you're willing to run, performance vs stability. And, by the way, an overclock which works on certain settings today may not work on the same settings tomorrow, it can be hard on the parts and you just never know. Your system might be "perfectly stable" for many hours before an over-overclock crash/problem manifests itself, it's part of the process.
I always snapshot the default factory UEFI/BIOS settings for all my parts. Then let the mobo-integrated overclocking tools do their thing and snapshot the "optimized" UEFI/BIOS settings they've selected (which are, after all, based on years of research and the collective input of world-class overclockers). These settings are great reference baselines to build upon. I don't seriously expect to be able to do better than all the mobo engineers, specialists, and overclocking leaders - the variances in my individual parts likely fall within their statistical patterns - but nobody (me or them) really knows what the exact thresholds are until they have been tried and tested and measured, so it's usually possible to squeeze a little bit more performance if done manually.
"All opinions are not equal. Some are a very great deal more robust, sophisticated and well supported in logic and argument than others." - Douglas Adams
[/Korth]