David, they mean the same.
For some reason in literary langauge "закончить" и "окончить" substituted "кончить" . Maybe they sound more delicate:)
"Заканчивать" is more commonly used in the sense "to finish doing something" and "оканчивать" is more commonly used in the sense "to graduate from" - but it is from "to finish [studies in] a school".
"Оканчивать" can be used with noun (to finish a novel) but is not used with infinitives. But even with nouns, I think заканчивать is more common now.
Сf. "окончание" - a final part of a story. When a novel is published in a magazine, the next part is introduced with "продолжение следует" ('continuation is following', to be continued) and the final part is introduced with "окончание следует".
As it was pointed above, shorter "кончать" is more expressive.