Within Canada, to send money to a friend online, you'd typically use the Interac e-Transfer service offered by most Canadian banks & credit unions. Here's a list of those that support it. My bank charges $1.50 to send money via Interac e-Transfer, and zero to receive. Charges are likely to vary by bank.
FWIW, Interac is a not-for-profit organization & network founded about 30 years ago by some major Canadian banks to facilitate ATM, debit, and other electronic financial transactions within Canada.
It's also possible at some banks to set up another person's bank account as a "personal payee" — at which point the account becomes available as a bill payment candidate in your online banking. I know at least three of the "Big Five" banks have this functionality. I use it at my own bank, but only for payees who also bank at my institution, and I'm not sure if it works between banks. You'll need to ask your candidate banks if they have such a feature, and whether it costs anything. The nice thing about the "personal payee" functionality is that, at least at my bank, there's no cost, so for recurring transfer scenarios it can keep costs down.
To send payments outside of Canada, wire transfers remain an option – but doing so through a Canadian bank may be expensive. There exist some non-bank wire transfer providers that have more competitive fees and exchange rates. PayPal remains an option as well.