Most (not all) of the shorediving is done off one of the 3 AI's located SE of town. Laguna Beach has a long dock out to their site, Deep Blue sits on the Pretty Bush dive site and you can access Labrynth from there also and Utopia Village has a shoredive off their property. We stayed at Deep Blue a couple of years ago and participated in the Whale Shark Research Week, Steve Fox the owner is involved with the Ecocean program which tracks them.
We saw six that week, participated in one tagging, and my buddy shot a picture of one that was sent to Ecocean, now everytime it's spotted he gets an e-mail with updates. Deep Blue has 4 research weeks - usually in March/April during which they send out a spotter boat to find the sharks while you do your regular morning dives, then during your SI's you look for and snorkel with any sharks you find. You'll also be diving with an expert in the field during that week who will also lecture at night. In our case one of the local experts also gave a talk one night as did Steve the first night.
There is no "have to see whalesharks" guarantee. We saw 3 the first day, 2 the next and IIRC one later in the week. Many of the captains talk on the radio when they spot one as they can only make 2 drops per shark per boat so they share locations. We also spent 5 days just diving because it turned flat calm and hot (in late March) which IMO drove them deeper - we didn't see any.
Typically due to travel distance, 3 boat dives per day is all they do, if there's a night dive (2 per week) you shoredive during those afternoons. I believe it's similar at the other resorts, we had looked into and were planning on staying at Utopia till I won (ebay auction) my trip thru the Shark Research Inst.
The resort itself (actually all three of them) are on the south shore a few minutes boat ride from town, they'll take you into town occasionally as requested. Several times we saw the Laguna Beach boats heading that way. Deep Blue is nice, rooms are more than adequate and all are oceanfront. The main building houses the bar, dining room, wi-fi and lounge w/pool table and is the meeting place at night. Bring Deet or similar, there'll be lots of bugs. It's a smaller resort, IIRC just 10 rooms max. During the research weeks they limit guests to 12.
If I do it again, I'd go back there. Utila town didn't impress me much. Laguna Beach also seemed very nice but the downside there might be that the cabins there are on the lagoon side, we were bit up good by sand flies every afternoon boarding Deep Blue's boat which also moored on that side. LB has a pool, nice looking beach and a couple of Newton dive boats. You want a fast boat since a lot of the better diving is around to the uninhabited north side of the island. Pinnacles, Duppy Waters, Blackish Point were among the best dives on that side, Black Hills was the best shallow dive on the south side - we did it twice by request. It's a seamount that rises to within about 40' of the surface so lots of big stuff feeds up the wall. Literally in one dive we saw huge triggers, a small school of 4-5' grouper, a school of barracuda and more fish than you could count.
Any of the resorts will pick you up at the airport or in town at the ferry port. For us it was much cheaper to fly into Roatan and take the two ferries over, they dock adjacent to each other and the schedules coincide so we were on Roatan at noon and on Utila by 5. Deep Blue lists the schedules, basically you take the Galaxy from Roatan to La Ceiba and then the Utila Princess from LC to Utila. The ferry port is a 10 min cab ride from RTB and it leaves at 2pm. An extra few $$ for first class buys an upstairs seat in the A/C. In LC just walk across the parking lot to the Princess dock once you recover your bags, you'll see the boat as you enter the port. Going back we left Utila town at 6am and were back on Roatan b4 noon.
Capt' Vern also runs a Cat from Roatan's West End to Utila Town daily. It's a longer ride but direct. And probably a lot more fun.
Steve's mom and one of the crew picked us up at the dock, they'll also get you to your plane/boat on time. There's no lights at Utila airport (or tower, or terminal, not really much of anything) so flights are all during the day. Plan for that if you're connecting thru SPS.