I shop at Amazon quite often but I think Walmart will win. They have the lower prices and have stores people can go to unlike Amazon.
With more and more of the Walmarts turning into "Super" Walmarts (i.e. grocery stores, automotive etc...) I think Walmart has the advantage.
Wal-Mart has edge over amazon in terms of many things. But Amazon is capable to achieve unexpected growth. Remember: Wal-Mart has thousands of retail shops across the world and Amazon has none [Not even single Physical store].