I feel strongly that paying down the mortgage is better than investing in a TFSA or RRSP because:
The savings in paying down the mortgage is tax-free;
The return is guaranteed, so it’s a risk-free investment;
Eliminating the mortgage by, say, age 55 frees up a tremendous cash flow for the last 10-plus years of work;
You don’t have to resist the temptation of pulling funds out of the TFSA and RRSP.
All through my banking career, my employers wanted me to push investments even when the clients had non-tax-deductible debt. This is good for the financial institution as they make money on both sides of the balance sheet. Not good for the customers.
I’d much rather have $100,000 in savings and no debt than have a $250,000 investment as well as a $150,000 mortgage. With the same net worth I would have no investment risk and better cash flow.