I am trying to setup a Dynamics CRM 2016 Internet Facing Deployment. The application/SQL server is a Windows Server 2012 machine and CRM is hosted as a separate website(not the default website). Where do I install AD FS? Is it supposed to be on the Active Directory server or on the application server? Are there any other factors to be considered?
yes you can deploy your ADFS on the application server. If you look at page 10 of this deployment guide - https://www.microsoft.com/en-us/download/details.aspx?id=41701 you can see that same server deployments are supported. Although, it's a bit messy and separate server deployment is recommended.
One thing to keep in mind is that whenever you need to restart your application server (installing rollups\updates) your ADFS will go down as well, and if there are other applications using it, your users will loose access to them.