Just buy a load of shares in Toronto, sell them on NYSE and pocket the difference. Easy!!
A company's market cap doesn't change because it is listed on more than one exchange. It is what it is. Apparent differences, such as the one you are looking at, are caused by currency differences. 18B US$ = 20B CAN$. Approximately. The slight difference would be accounted for by rounding.
if a company is listed on 2 different stock exchanges are the prices and market cap the same? if the market cap is 18 billion on NYSE and 20 billion on TSE is the market cap 38 billion? or would you add the market cap of both?