Rebarreling an upper is, I believe, the most critical function I have ever performed, and I performed it badly. Profit from my experiences:
1) Get a half-inch torque wrench and use a proper barrel wrench, NOT a pipe wrench. Proper torquing is available in the M16A2 Technical Manual, which is available in PDF format on this website
2) If you have a vise, I recommend using wooden blocks or a REAL "upper vise" to avoid marring your upper receiver
3) Two Words: Headspace Guages
4) Three Words: Front Sight Alignment
5) Make sure you have a punch small enough to pop out the gas tube pin; You will probably need a new pin if you are not EXCEPTIONALLY skilled at it.
6) Three more words: Non Marring Hammer (preferably plastic/rubber head)
7) Remember to transfer your front sight assembly (not the front sight/gasblock unit, but the actual front sight, which is screwed in, the plunger, which holds the front sight at its fixed position, and the spring, which holds the plunger against the sight) to the new barrel before throwing out your old one.
8) Make SURE your spring-ring and handguard retainer is installed correctly, meaning the proper direction, or else your handguards will be nearly impossible to put on or take off.
9) It can't hurt to have a spare gas tube, just in case you screw up the one on your rifle during removal. It's easy to bend it wrong. Purchase the correct gas tube. You cannot use a 16" type gas tube on a 20" barrel. This may seem obvious but it wasn't to me the first time...oopsie.
10) Three more words: Needle Nose Pliers
(To hold the gas tube pin in place while you pound it gently into that little bitty hole with the above mentioned non-marring mallet)
And, the last:
11) Two last words: WHITE SHEET (spread it down underneath you for when you drop that stupid little gas tube roll pin the first 10 times you try to reinstall it, or when it drops out after you punch it out of your old rifle.
In general, if you buy quality stuff, you are less likely to have problems. The trick is knowing quality stuff from the cheap junk.
That's all I can think of for now.
Panz