Azure Automation requires an Azure Subscription and is billed based on usage of runbooks and usage of other components. Universal Automation is billed via a once a year license fee.

Azure Automation requires a connection to the internet to control the execution of scripts on agents that run on-premises. Universal Automation is a stand-alone agent and does not require a connection to a master to drive the execution of scripts.

Azure Automation collects output from the stdout stream. Universal Automation processes and handles native PowerShell object output that can then be stored or passed directly into child processes.

Universal Automation only supports the direct execution of PowerShell Scripts. (Not Python or Graphical)

Universal Automation allows specification of PowerShell version to use on a schedule / per execution basis.

Both Azure Automation and Universal Automation allow the definition of variables that can be used in Scripts.

Both Azure Automation and Universal Automation allow the definition of credentials that can be used in Scripts as well as function as a “run as” account for the script.

Both Azure Automation and Universal Automation allow for users to provide parameters to scripts when running them that are automatically retrieved from the param block of your scripts.

Azure Automation has features for Configuration Management and Update Management. Universal Automation does not have these components.