So I read the reviews and ordered an XXL.  It was too big.  I am curvy normally where an 8-10 pants but a DDD up top.  This was way too big up top.  So I ordered an XL and an L of the same so I could compare.  There was a huge difference between the XL and the original XXL I ordered.  Of the XL and L there was very little difference.  The L was slightly smaller up top but was shorter too....which I needed bc I am 5'6".  I am keeping the L but I do agree with the other comments that though the material is soft...it is not very forgiving and will wear it with some spanx like garment under it.