Your company needs to prove that they can't hire a US citizen as qualified as you as a first step. For this step they have to file PERM to department of labor. During this process, your application could be audited for further information. This will slow down the application. Hard to describe everything there, just Google it. :)
H1B has few categories. EB3 - longest, will take 5-6 years. EB2 (you have to meet min requirements) will take 1.5-2 years. EB1 (also has min reqs) not sure, but shorter than EB2. Whole process sucks. If you can get GC from TN, do that.