Buchanan was born in Edmonton, Alberta. He went to university at the University of Alberta and the University of Western Ontario and got a Master of Business Administration. Before becoming a politician, he was an insurance broker at the London Life Insurance Company. Buchanan was elected for the first time in the 1968 federal election. He was elected again in the 1972, 1974, 1979, and 1980 elections. After the 1980 election, when Trudeau did not choose Buchanan to be in the cabinet, Buchanan decided to resign his job as a Member of Parliament. He got a job in Calgary working in the private sector.