Internal is preferrable if you can get a clean run at both exits, so there is little friction in the operation of the halyard - you want it to go up and down easily, and it carries a heavy load. Although all other
lines are internal, I did run our
spinnaker halyard externally to ensure trouble-free operation and to permit a crew member to jump the halyard when hoisting.