Write-Host
writes directly to the console; Write-Output
writes to the pipeline, which often ends up to the console but not necessarily.
For example: Write-Host "The Cake is a lie" | Out-Null
won't work as expected, Write-Output "The Cake is a lie" | Out-Null
will.