Just a note to add to what has already been said, particularly about the HUGE line ups for ferry tickets on weekends:
Skip the lineups by buying advance purchase tickets at an off peak time. They are available in lots of ten or more, and they are discounted from the regular price. They are available in the ticket office to the right of the ticket booths.
Once you have your tickets in hand, you can breeze by the lineups and get right to the gate for the next ferry.