For SEO purposes, the canonical link shows Google and other search engines which URL corresponds to the original source of content and should be shown in search results. That is all you need to know about it.
Sometimes there are pages that have substantially similar content (intentionally or unintentionally). Then Google needs to be briefed about the pages and it needs to be let known which page to prefer over others and which one to be given less importance.
Hence, a canonical tag needs to be attached to the page that is more important. This is what Canonical tag means.
I hope this helps!
A best practice to effectively use canonical tag would involve putting a canonical tag on your main homepage template, which helps you prevent unforeseen problems.