Once you have mastered pushing DSC configuration files locally, you will find that there isn't a lot of difference in pushing them remotely. It follows pretty much the same steps but with the addition of creating a remote session on the target host before pushing. We can either create remote sessions called CimSessions ourselves or allow Start-DSCConfiguration to create them for us in order to pass information and commands to the remote host.
We would create CimSessions ourselves if we wanted to reuse the sessions for multiple attempts, as this would save us time connecting, closing, and reconnecting each time we attempted to push DSC configurations. We would also create CimSessions if we had a nonstandard WinRM setup, for example, HTTPS endpoints or different authentication methods (Kerberos or basic authentication, and so on).
You will...