The trip from Saint Thomas to Saint John is a really quick 20 minute ferry ride and costs $12 round trip. It runs from the marine terminal at Red Hook every hour — you can also take a Ferry from Charlotte Amalie to Red Hook if you want to do the whole trip via ferry from Charlotte Amalie. You’ll be dropped off at the dock at Cruz Bay in Saint John, where you can explore the town or rent a car to explore the rest of the island. Something I haven’t done the two times I’ve taken the trip so far, but plan to do this coming week on my 3rd trip.
The last ferry running from Saint John to Saint Thomas leaves Cruz Bay at 11 PM — so don’t drink too much and miss it unless you want to spend the night on Saint John. Side note — even though you can drink pretty much everywhere else in the US Virgin Islands (including in the car), you can’t drink on the ferry. I tried, and got scolded.