Puerto Natales is like Queenstown in New Zealand and Talkeetna in Alaska. It's a petite little place that packs a punch. It oozes charm with everything from a cute chocolate shop to an excellent little local coffee shop (which just happens to be named The Coffee Shop). I really adored this place and our hotel, The Singular Patagonia, was amazing. Walk along the waterfront, snap a picture of the megladon mascot and just relax.
Smaller than Punta Arenas but the vibe here is decidedly relaxed and the restaurants and cafés here have a lot of charm. A nice gateway to Torres del Paine that would be worth an extra day if you have the time. The waterfront is pleasant. There are a lot of stray dogs but they are in good health and well-behaved.
Like most towns in Patagonia, Puerto Natales is more of a launching pad for nature based activities than anything else. That said, its a great launching pad. Why? Well, for starters, it has the best town mascot of all time: the megladon! What is that? Apparently a giant, now extinct sloth. And yes, it's everywhere - from the town entrance (read: giant megladon statue) to the street signs (see: megladon outlines on every post) to the businesses (biggest regret: not using Megladon laundry). Basically, if I could, I would rate the Megladon a 5/5, but sadly its not quite tangible enough to make it to a review page. Beyond the Megladon, the town has other (but more standard fare) offerings. Try Afrigonia for delicious food (stick to their meat selection). Stay at Erratic Rock (if it's not booked up). Drink at the bar next door (and rent trekking gear there as well).
Good place to chill before and after your trip to the Torres Del Paine park. Surprisingly charming.