For true secure transfer (to keys that have never been known to an online, network connected system), create new keys offline and do a send transaction so the funds are transferred there.
is that because the network will know the public address by me providing it..? but if its completely offline how can it validate the address or is it because it doesnt have to?
Read this:
https://en.bitcoin.it/wiki/Securing_your_walletYes, all you need in order to send money is the public address. You could even send money to public addresses that don't exist yet! (well, technically they all already exist, just nobody knows the private keys). Don't do this though, you can't create a private key from a public address - that's the whole point of the cryptography. Anyway, create a new wallet offline with bitcoin-qt or some other client, generate a new address, and then use blockchain to send money to that address. Make sure you back up the wallet that bitcoin-qt generates though - once its lost it's gone for good!