Surf Beaches:
If you are into surfing there are plenty of places for it in Geraldton.
-Hell's Gate is a popular surfing spot off Point Moore (where the lighthouse is). The only disadvantage is that it's a longggg paddle out unless you manage to score a lift out with someone who has a dingy.
-Back Beach ("Backers") is another popular spot. The waves are a bit tamer here. This spot is more for the kids.
-Greenough Beach. Just a regular surf beach, need I say more.
-Flat Rocks. On the way south, turn off past S-bend. I haven't been here for years, so I can't really comment.
- There are a few other good surfing spots in Geraldton although I refuse to tell you where they are -- if you really want to know, ask the locals. One hint though, you generally need 4-WD to get to them.
Windsurfing/Kitesurfing:
Every October (?), hundreds of European backpackers flock to Geraldton to take advantage of the wind. The top windsurfing spot is Coronation beach, a 15-minute drive north of Geraldton. I think you can camp here. Other popular spots are Sunset Beach and Separation Point.
Swimming:
You have to hit it lucky in Gerladton to get a good day for swimming. In between the wind and seaweed, there aren't many perfect beach days.
Town Beach -- very shallow. No waves. Good spot of the kids.
Back Beach/Tarcoola Beach -- More popular swimming spots. The surf life-saving club is located at back beach.
However, the best way to find a good spot to swim in Geraldton is to get a 4-WD vehicle and travel south down the beach from South Gates (where the big sand dunes are). There are plenty of nice little spots to swim along the way.