Give this a try:
Get-WmiObject win32_service -Filter "startmode = 'auto' and state != 'running'" -computername (Get-Content C:\ServerList.txt) | ForEach-Object { $result = $_.StartService() # You can check the value of $result.ReturnValue here; if it's zero, the service started successfully. }