For years I thought a t-shirt dress was just a big t-shirt that had given up, and I treated mine that way, wearing it to the bin and back with wet hair and nothing else going for it. What changed my mind was wearing one with proper boots and a belt to something I couldn't be bothered dressing up for, and having three people ask where it was from. Same dress. Different attitude.
It's not going to do everything, and I'd stop pretending otherwise. If you need structure, a waist that stays put, or anything with a bit of polish for a formal do, this isn't it, it drapes rather than holds, and on a bad day it can look like you've borrowed your own nightie. Thin jersey ones cling in places you might not want clung to, so if that bothers you, look for a slightly heavier cotton blend, it sits better and doesn't show every seam of what's underneath.
Colour wise, the plain ones earn their stripes more than the slogan versions, which date fast and start to feel like a costume within a year. A proper ink navy, a soft charcoal, or a warm rust all wear well against skin tones that oatmeal and pale grey can wash out. I've one in a deep bottle green that's outlasted three "statement" prints I was far more excited about at the time, prints crack and fade at the fold lines long before plain colour ever does.
Mine have had a hard life and mostly shrugged it off. One's been through a washing machine on the wrong cycle, sat balled up in a gym bag for a fortnight, and still gets worn on a Saturday without complaint. Wash them cold, turn them inside out, and skip the tumble dryer if you can, heat is what kills the shape round the neckline first. After a season of proper wear you'll see the hem start to soften and curl a touch, which honestly looks better, not worse, it stops looking new and starts looking like yours.
Next time you're trying one on, skip the first thing you reach for and check the weight of the fabric in your hand before anything else. If it feels like it might go see through under a shop light, it will.