Weed is great because it's just so god damn benign. Hell, depending on a person's health and how they take it, it can actually get you high and be good for you at the same time. That makes it a champ in my book, even if it doesn't provide as amazing a feeling as harder drugs.
On the other hand heroin is my favorite hard drug for a few reasons. It has no crash, the drug itself really isn't very bad for you at all, it relieves pain, you can take it in small doses and go about your daily business or you can take enough to nod out and get really messed up, it doesn't cloud your mind nearly as much as a lot of other substances, and it's one of those things that as long as you have more you can keep going without worrying about losing sleep or having stuff to do or anything...all of that along with other things, like feeling really damn good.
The problem is that then you have things like hallucinogens with their therapeutic properties, and the stamina that uppers give, and the utility of stuff like caffeine, along with a lot of other uses for all the other substances listed. I think that although a person can prefer the feeling and use of a certain drug, there's a time and a place for each one that makes it the best for certain situations.