-suppose you used to run any game at high/ max settings (performance).. why would you still want to overclock your CPU or GPU?
Either for future-proofing or to be able to do other things at the same time. A lot of overclockers are also not gamers, they may be building a system for video editing (the faster your processor is the faster you'll finish, so there really isn't a "max out" there, bitcoin mining, protein folding, or some other project that I haven't mentioned. Personally, I built my computer to game, and while I have great average frame rates on my machine, the minimum framerates I experience are less than satisfactory, so I will be upgrading in the near future.
-Does overclocking means if you have AMD HD 7850 overclocked, it will perform same as an AMD 7970 or the GTX 680?
Not exactly, you're talking about different cards, so it would be difficult to quantify exactly how much you would have to tune a lower-tier card to match a higher-tier card, especially if you're talking different architecture (amd vs nvidia). What it does mean is that you can get similar performance by overclocking your GTX 670 that you can get out of a GTX 680 (unless you overclock the 680 also)
-if that is then why do people buy the 7970 but, not the 7850 and overclock it? again why is overclocking really necessarily to a gamer?
Overclocking isn't "necessary", it's an option. Usually it's a free option (not counting the additional cost of the K-series processor in the case of intel i5/i7 cpu's, or the additional cost of a higher-end motherboard), meaning that your performance out of the box is what you paid to get, but then with a little time and patience, you can get even more performance out of the same hardware by overclocking. Why is it useful? It means instead of buying a $320 i7 3770K to get faster than the stock 3.4 GHz that the 3570K is out of the box, I can overclock the processor and get those extra cycles (my 3570K is running at 4.7 GHz under load, it idles at whatever the default is, I think 1.6 GHz).
I'm not positive, but I think you seem to be asking what benefit there actually is to overclocking. That's not an overly simple answer to give, but to make it short, essentially your cpu can execute instructions at a certain rate per cycle. whatever your clock speed is is the number of those cycles over time, so a 3.4 GHz i5 3570K cycles 3.4 billion times per second with whatever tasks it needs to execute loaded into each cycle. If you are requiring something of your computer that requires more instructions be executed than there is time to complete them, you either need to force more instructions into each cycle, have another processor perform the tasks (that's what the extra cores in a processor are there for, but the program must be written to use multiple threads in order to support this), or make those cycles happen faster. Overclocking is pasically the user taking the 3rd option to mkae their computer faster, since you can't realy do the first one as an end user, and you're more or less stuck with the same number of cores on the die as you had when you bought the chip so number 2 isn't really an option. Since 1 and 2 both require you to purchase a new processor, option 3 is the one that's feasible. This is an overly-simplified view, but it should give the general idea