Where to buy largely depends on where you're located. I'm a bazillion miles away from everything, the nearest LHBS is about 300 miles away. I buy almost everything from More Beer and some from Williams. In the past buying bulk grain was the cheapest way to go, last time I did that, with the shipping the bagged grain cost more per # than the stuff I bought by the pound. I found it interesting that although their CA warehouses are only a few miles apart, the bulk shipping rates from Williams were about 1/3 lower than MB. My most recent order a couple weeks ago the best price was for 10# bags with free shipping, hell if they want to give a discount after going to the labor of bagging grain up into 10# lots I'm cool with that.
I've found that NB & Midwest's prices just aren't competitive with MB and to a lesser extent Williams and bulk shipping is higher, the only time I buy from them is when it's something the other guys don't carry, caramel rye being a good example. If I had a LHBS within a reasonable distance I'd be willing to pay a bit more to keep them in business and handy, hell, if there was one I'd probably start using liquid yeast for some brews. Sadly that's not an option here.