Hello gav,
Quick overview:
1) file_get_contents - Very simply. The good choice. Unfortunately, it is disabled at most servers.
2) socket - Simply, quick. This establishes connection standard way. Unfortunately, sometime appears strange characters on the cache pages.
3) CURL - Robust and secure. Slightly slower. There must be installed CURL extension for PHP on server.
4) Direct Method - We don't recommend it. It creates new instance application and cath its output. This method is aimed for servers which don't have permission to making loop-back requests.
I recommend you file_get_content if possible, or CURL.