The movies are always talking about off-shore Swiss bank accounts and "hiding" money. Is this legal? What is their motivation for doing so? If it is legal (in any way), how can it be profitable?
It isn't illegal to hold money in overseas accounts. It is illegal if you don't report it. If the money is outside the US, it is hard for IRS to know about it. That's the reason people who have money to hide take their chances with overseas accounts.
Hope this simple explanation helps.
The thing about the Swiss banks is that the accounts there were "anonymous", that's why it's such a famous example. Until not so long ago, the access to the account was by a password, and no-one knew whose account it is and to whom the money belongs.
That's perfect for money laundering and various illegal activities (like hiding bribe money, stolen money, evading taxes and what not).
The US pressured Swiss to cancel that policy, and now the Swiss banks are basically the same as everywhere else (there are other off-shore places that still allow similar anonymous accounts, I think).
Having an account abroad is usually legal (depends on the country of your citizenship of course, I think in Canada there's no law against that, certainly not in the US), as long as you declare everything and the owners of the accounts are not anonymous, and their ID's were verified by the bank.
By the way, one of the former Israeli Prime Ministers, Itzhak Rabin, had to resign his post because journalists found out that his wife had a bank account in the US. In that time (late 1970's) it was illegal for Israeli citizens to have accounts in foreign banks. Similar laws were in the USSR, and most (if not all) of the Eastern block. All of these countries no longer forbid foreign bank accounts.