I have very few complaints about Walmart. It is what it is. Their prices are low. They generally have stuff. They are no more or less likely to be out of things than anyplace else may be. They generally don't have exceptional customer service/support, but at their prices I don't expect them to. If I need that I know enough to go somewhere else, and expect to pay more. That's life.
Let me give you a related story. I recently needed to repair a dripping faucet. I elected to go to the small mom and pop ACE instead of the big box Lowes (where I am never disappointed BTW) because everyone knows "you should support the small guy." I was asked upon entering if I needed help by the very friendly guy closest to the door, and I replied "I don't think so, I think I'm good." The manager, a guy I know and near as I can tell resents the fact that his brother (former co owner) retired a few years ago and left him holding the shop. Anyhow, he asks "What do you need?" I said I'm fixing a faucet and he rudely says "Well why are you going there?" (I accidentally turned down the wrong aisle since I was looking at him instead of where I was going.) He proceeds to accompany me down the faucet aisle, insists on getting me the stem I need even though I am perfectly capable of selecting it ( "Hey, who's the hardware guy here?") and sort of derides me for bringing my worn out stem with me in a little zip loc. I'm holding my tongue because "You're supposed to support the little guy." The final straw came when the cashier wouldn't accept my ACE reward for $5 off because I needed to spend $20 BEFORE taxes. I was .10 short. I walked out, went down the street to Lowes, bought the parts I needed, was treated very nicely, and fixed my faucet.
No, I don't hate Walmart or any box store.