Move my Operating System to a Different Hard Drive without Reinstalling

I am fed up of the low disk space problem, which does not let me restore data or install new applications. Most importantly, my computer works at a very low speed. I want to upgrade my old hard disk drive by transferring my existing operating system to a different hard drive without reinstalling it. Please tell me the correct way to do it.
