i think all the above posters gave you excellent advice.
if you go during easter/spring break, it will be crowded. if you decide to stay off site and do want to purchase the express pass, buy it in advance.
if you wait until the day you arrive at the park, they might be sold out. only so many express pass tickets are sold per day.
like damo said, have a touring plan in mind.
go BEFORE the park opens. lines are let in for entrance before park openings on crowded days or when the line is forever long.
i have been at UO when this has happened many times. i get in the line at 8:20 and have entered UO at 8:30 even when the park opens at 9.
if that happens, not all rides will be open at 8:30
go to the main rides first. ride twice if you desire/get out go back in line/
go opposite of the crowds. eat lunch at 11 and you will not have long lines for that or getting a seat if you do counter service.
i stay on site as what i would be paying for the ep, i just apply that amount towards what i pay for my room.
if you stay one night on site, you get the room key card as your ticket to the fotl for the day you check into the hotel and the day you check out of the hotel. that is 2 days, 2 parks fotl privledges. if you have 3 in your group and the ep could be $50 each at holiday time, that's $300 you have not spent as it was a perk for staying on night on site.