As the time pass I am seeing more and more people talking about the "off-chain" transactions, but what is it exactly ? Is it doing transactions outside of the Bitcoin network, but still using Bitcoin as the currency, making it not an altcoin ? If it is the case, how is it even possible ? And what advantages does that bring ? If not what it is ?
Typically, in an off-chain transaction, a promise or an un-broadcasted transaction is transferred rather than the actual bitcoins. Also, bitcoins can be sent by transferring the private key holding them.
For example, when you buy bitcoins from Coinbase or an exchange, no bitcoins are actually transferred. Coinbase or the exchange simply promises to send you the bitcoins if you ask for them. If you send bitcoins from your Coinbase account to another address at Coinbase, then the transaction is done simply by updating account balances at Coinbase. In these transactions, nothing appears on the block chain (until bitcoinsare sent to an address that is not controlled by Coinbase or the exchange).
A Lightning Network works (in simple terms) by trading un-broadcasted transactions. When you send btc through a LN, you give the receiver a transaction that will send your btc to them. They typically don't broadcast the transaction immediately because they expect to you to give them an updated transaction when you send more btc, or when they send btc back to you. Eventually a transaction will be broadcast and appear on the block chain, and that on-chain transaction will represent the result of many of these off-chain transactions.
Giving someone a physical bitcoin is an example of an off-chain transaction involving transferring a private key.