We took DS, 34 mos, on a whale watch a few weeks ago. About 2 weeks ahead of time, I took a whale book out of the library, and we read it almost every night. We talked about how we might go on a boat and see some whales.
We went out of Gloucester, but I think it's a bit less expensive out of Rye, NH. Our boat was larger - at least 75, perhaps, on 2 decks. The trip was extra long that day because the whales were in a slightly different location. So, the morning boat got back late, and our tour left around 2:15, back at 7:30. DS did fine. He did nap in DH's arms on the ride out to the whales, as his usual nap time is 1-3ish, so by 2:30, then lunch on the boat, he was pretty tired. By the time he woke up, we were nearing whales. Because of the book, he knew what to look for . I was pretty jazzed that he recognized what we were looking at, but I did point a lot of it out to him. (He was so quiet for a time - unlike him - that I wasn't sure he was seeing them, or "getting it.) I finally got him to tell ME when he saw something - whale spout, tail, fin, whole body. We even saw some dolphins.
He rode pretty quietly on the way back. The worst part of the trip was the fact that we got to Gloucester too late to get lunch before the boat left and then it left LATE, so we had a very late lunch (of only hotdogs w/o buns) that was super-expensive ($3 a piece on board). I did have some snacks for DS, but we went through them, too, by the time we got back at 7:30. Luckily, DS is pretty well behaved, even when he is hungry/tired.
Bring lots to eat and drink, and a warm jacket.