What is the different between url() and getUrl()
They do the same thing. url() is an alias of getUrl(). This is the link from the Craft 2 docs: https://docs.craftcms.com/v2/templating/entrymodel.html#url.
It works the same way in Craft 3, but I can never find anything in the Craft 3 docs.