it depends on how good the weed is and how long you've been smoking weed. It also depends if your smoking a blunt or swisher. But since you asked this I assume you're new at it. Anyways it should last a few hours if you're new and its good weed. Also the first 30 min are the best of the high. But be careful because the main problem with new smokers is the fact that they don't know
how to inhale properly. That is why some people say it takes a couple
times of smoking before you get high.
The first time getting high is the best. What they say about drugs is
true--the subsequent times you use drugs, you're always trying to get
back to the original high, the best high. You won't ever really feel it
as strongly again.
Hope this helped!