Both Petco and Petsmart generally have poor fish care, but I will admit Petco is often better. They do get in some lovely bettas, and that's where I got mine - Sunny. But you do need to carefully check the betta you are considering if you buy from them, look for signs of heavy stress or ammonia poisoning, and see if he (or she) takes interest in you. Males will often flare at you if you pick up their cup, which is a small sign of good health. But be careful of fish with damaged fins, cloudy eyes, or fungus/dots/raised scales.
aquabid.com is a great place for bettas as well as plants and other supplies, but these are international breeders and you usually need a proxy, and have to deal with shipping costs. But these are show bettas (including koi betta which neither Petco or Petsmart will ever have) so they're often pricey anyway.
Also, here's Sunny:
(Look at how crazy big his fins have gotten!)
He was about a year at the store, and has spent another with me, completely healthy. So you can definitely find good bettas there who will live long with good care.
Good luck!