I am planning to have some colones and some us dollars. Where is it better to get the exchange rate for colones? Here in Toronto, Canada or in San jose?

DO NOT buy them in T.O. Wait till you get to S.J. Best to to get them from an ATM.( at the S.J. airport). You will always pay substantially more buying them in your home country.

greg- if you give this just the tiniest bit of thought, I'll bet you could answer it for yourself.
even if there were no atm's in the airport, which there are, you would be better off exchanging a small amount of money at the airport exchange booth than getting colones in canada.
Back in Feb, the best rate I got was by exchanging USD at a bank in SJ (Alejulia actually) -- even with the hit converting CAD to USD. the ATM fees and the bank (BMO) exchange rate wasnt that great.
SJ bank paid 498.5 per USD (cash)
BMO paid 486 plus a $5 ATM charge
CAD and USD were at parity at the time
the street rate for USD was about 480 to 490.
definitely do not buy Colones in Canada.