Heat the oil in a large, heavy-based saucepan over a high heat. Add the popcorn kernels and quickly cover with a lid.
Cook, shaking at regular intervals, for 4-5 minutes or until the popping has stopped.
Pour the popcorn into a large bowl and set aside. Wipe out any excess bits of popcorn from the pan and return to the heat.
Pour in the sugar, water and salt and return to the heat.
Cook, without stirring, 2-3 minutes, until the sugar has melted and starts to turn a deep caramel colour.
Stir in the butter (it will sizzle, but not for long) and keep stirring until the caramel is smooth and glossy.
Return the popcorn to the pan and stir until evenly coated.
Spread the popcorn out in an even layer over a couple of baking trays and leave to cool for 20 minutes.
Transfer to a large bowl and serve.