Buy hops from a dedicated company, that way you know what you're getting...I mostly use Yakima Valley. As for grain, I would just buy locally assuming you have a relatively high traffic LHBS close to you.
I get most of my hops from HopsDirect. I buy my grain locally in bulk. When you add shipping, it's not a whole lot cheaper to buy online.
I buy hops from Yakima Valley too...great service, great selection, great price, fast delivery, great fresh hops, what's not to like? Grains from my LHBS...I get 15% off with American Homebrewers Association discount, and then they put 10% of total back on a reusable card for future purchase, great deal for whatever they carry!
... just maybe might could depend on how 'best' is defined. Cheapest price? Fastest service? Largest selection? Freshest product? Ease of ordering? Best packaging? I'm willing to wager what's best for me probably ain't what's best for you.