When using Get-WinEvent, instead of Filtering by ID in the pipeline using Where-Object, you can provide a hashtable of the LogName and ID directly to Get-WinEvent, drastically increasing performance, both locally and remotely querying for logs.
Official doc on Get-WinEvent can be found at this link