Generally, the gigs of data are transmitted just once, during application setup. After that, clients can pick up new blocks are they are generated by the network. There are numerous proposals for generating a "summary block" that would securely allow a snapshot to be generated to avoid the initial download. [1]
There are light-weight clients out there that rely on a web service of some form for keeping track of the whole block chain[2].
In order to issue a new transaction, though, you only need to transmit the transaction itself: a list of signed transactions: "transfer x bitcoins from this address to this address", basically.
[1] Some suggested implementations are listed here https://bitcointalk.org/index.php?topic=74559.0
[2] https://en.bitcoin.it/wiki/Thin_Client_Security
(Edit: fixed formatting)