The only exception and you should ask around are the Apple phones but if you have not paid off the contract the IMEI may be in a database of phones that carriers will not transfer to their network.
Try https://www.imei.info/

If you don't want such limitations, never buy anything but unlocked phones. Virgin and others lock phones and you pay until the end of the contract before it is released.

The very new to this try to "do myself." There are long prior discussions we should not be repeating here.