Both have beautiful beaches. Hervey Bay has no surf as it is protected by Fraser Island but this means you can swim anywhere not just between the flags so the beaches are not crowded like at the Sunshine Coast. Rainbow Beach does have surf but can be fairly flat much of the time.