Among ATT, T-mobile and straight from HTC web unlock; I would buy t-mobile version as it covers all frequency bands for t-mobile, ATT and other GSM carriers out their in world.
Here is question. Walmart sells HTC One for ATT, T-mobile, Sprint, etc. If I select HTC One for T-mobile unlock version and ask them to activate on ATT, would that work ? Idea is when I leave ATT than the same phone can easily be used on t-mobile. Other side of coin is by next year, t-mobile may have re-farmed it's current WCDMA/HSPA+ from 1700mhz to common 1900MHz and also built out enough LTE network to cover 200 million USA customers so the phone will mostly will use LTE and not depend on HSPA and LTE(band 4,17) is same for ATT and t-mobile.