if you are between two sizes definitely size down. I did the opposite and it is less tight than I would normally hope for it. I should've gotten a small. So it is definitely true to size. (I am 140lb, 5'5\", and my boobs are 34\", waist is 27.5\", and hips are 40\" for reference)
The fabric feels nice and soft, and it is well sewn. It's very flattering, with a regular lining underneath that is also stretchy. It is not see-through at all, and it's not heavy, but also not lightweight.