I recently purchased the Tacx Votex smart trainer and am using it on zwift with my desktop PC and a wireless ant+ dongle. The key is get on zwift and let the program vary the resistance automatically while you go up and down the hills and you compete against other riders interactively. It makes the whole riding on a trainer very enjoyable. It cost $529 shipping included from Indy cycles.
Watching videos while you are a trainer is not the answer. Interactivity while you are riding is what is the game changer. I can do a 90 minute ride at 20 MPH and it is very enjoyable!