All these people saying you will be surprised are lying, more or less; it means you haven't done enough prepwork to account for surprise.
To seem like you have your shit on poimt comstantly and look like an improv king, have:
>1 planned scenario with whatever amount of work you're comfortable throwing at it
More is better, but focus on creating interesting things for them to interact with, not the way they choose to interact with them. Go read the Tomb of Horrors PDF, the traps and dungeon design have descriptions and drawings that show a level of thought that's on the right track for fun.
>3 fleshed out, prepared hooks to get your players back to your prepped work if they get off track
So if you want them to go to the beach to meet the bad guy, for example, have ready and scripted a few reasons for them to get there if they're not (e.g, there's going to be a festival there, there's a wanted criminal job posting for a man at the beach who's killed ten people and has a penchant for collecting his victim's eyes, and a strange man who washed up on shore set up a stall and is selling strange and alien goods which adventurers in the area all seem to be carrying.
>At least one weakly fleshed out location-independent plot
This is something you can use if they don't give a shit about your prepped stuff or they aren't biting. This is, e.g., instead of the beach, ogres have been raiding granaries and there's an ongoing standoff between the army and ogres holding the food for the winter hostage.
Works anywhere, and is open ended as fuck.
One last thing: never ever tell them you plan like this (people like to think they choose their path, even if all paths lead to the same point), always railroad (because the alternative is aimless wandering, shit tier underprepared NPCs, and a directionless plot), and never get caught railroading (because people go crazy if they have no input)
So yeah. Build a good plot skeleton, have nice set pieces made, and get them there.