I've been to these 3 .. Redang Tioman n Desaru.. going Perhentian later this yr so can't comment on tat...
Redang has e most beautiful beaches n water of e 3.. i lurrvvveee it!!! white sand n turquoise waters! I stayed at Redang Laguna which is e best resort of e stretch.. (berjaya is nice but more exclusive private beach) ..it's affordable as in all meals r provided buffet style n all snorkeling trips (twice a day) r included as well.. juz pay for e lifejackets n snorkel sets n u can keep it for e whole trip. u can snorkel off e beach anytime u want! great snorkeling off e beach n u can even see baby reef sharks! however travelling there is quite tedious.. u can fly to trengannu (i tink) n continue a 4 hrs or so bus trip to redang or travel 10hrs bus ride from spore (+boat ride).. tough but worth it! in fact u can see redang quite up close in this movie "summer holiday" which made redang popular all across asia...
Tioman has e best underwater marine life n coralsof e 3... very colorful! tat said redang's nice as well but i tink tioman's corals r fantastic! there's much choices of accomodation on tioman so it's really up to u.. e beaches r pretty as well n u will get to go to this tulai island to chill..v pretty small island.. u can snorkel off e main beaches in tioman n great snorkeling trips since e fishes n corals are greater in variety n colors..easy access to spore.. juz a 2 hrs bus ride to mersing (+ boat ride)..
Desaru is a place u can skip... i stayed at pulai desaru...yellow dirty sands rough seas.. can give tis a miss.. but it's v near to spore.. juz an 1 1/2 hr or so boat ride.. skip this..
i heard perhentian islands r like redang.. postcard perfect island paradise.. i would assume it's less crowded than redang though.. so if u wana skip e crowd of redang then do go to perhentian..
so my advice? perhentian (less crowd) or redang (more popular) if u want postcard perfect beaches.. tioman if u want real fantastic underwater marine life n corals.. forget abt desaru..
have fun!