When MyTrezor is offline you just use another client to manage your funds. And no, the point isn't being offline. The point of Trezor is exactly the opposite: be online, but having your coins secure just like having the keys offline.
I don't undestand. If you are online, you are prone to attacks. Cold storage means offline.
Does Trezor keep private keys offline, while being able to be online (create new keys and receive payments) how does it do it?
Trezor keeps the keys in itself separated from the online environment to which it is connected to. Transactions are signed on the device and sent to the online computer. Exactly the same as Cold Storage, but with the convenience of being able to be online.
For info on how it does it you'd probably have to review its code
I don't understand.. how does Trezor and Electrum communicate with each other.
Most likely in a similar way Trezor communicates with MyTrezor. There's a plugin for Electrum that allows you to control your Trezor.