What is meant by off-chain and on-chain transactions? I don't get the meaning of off-chain and on-chain in general.
Off-chain transactions are those that do not belong to the Ethereum network, and are not visible there.
On-chain transactions are the ones executed on the Ethereum network. That's why you can track them using tools such as etherscan.io.
Usually, off-chain transactions are somehow "connected" to on-chain transactions (for example: storing the tx-hash of an on-chain transaction in a database or vice versa). This is useful because not everything belongs to blockchain network, and yet we still want to "connect" data on blockchain to our data, stored in a relational database or something.
Offchain transactions are used for micro payment in which two parties create a channel and transact micro transaction just signing and not broadcasting to main net .. Once they decide that they need to claim the exchanged value then they can post the transaction to Mainnet for mining and the value will reflect into their balances..