If you have smoked marijuana for a couple years will your body rid THC faster than someone who is fairly new to the drug
Actually no, just the opposite of what you are thinking. Someone who has just smoked for the first time, or only occasionally with good breaks in-between, like a once-a-month weekend warrior, will test positive through urinalysis for a much shorter window than someone who smokes regularly.
Generally, most regular smokers who are not overweight and not particularly long-term will test negative via urinalysis in 3-4 weeks. Your once occasionally here and their smoker will test negative via urinalysis is as little as 4 days, but generally about 10.
Someone who's been smoking heavily for several years will take much longer to test negative. Because marijuana is not a water-soluble drug and binds to lipids in your body, if this long term smoker is on a weight loss the program, they could conceivably test positive until they complete their weight loss program.