I'm 5'2 160 with a medium/curvy build, purchased an XL and it fits great! The bottom is very flattering on the behind and the top is adjustable which is helpful (if any smaller than a D I'd recommend a L)  perfect if you want to cover up a little after eating too much BBQ haha