Invoke-Command issued to multiple remote computer

I am trying to issue an Invoke-Command simultaneously to several computers. I am reading the names of the computers from a .txt file. My issue is this. Invoke-Command will take multiple computer names as the -cn parameter. If I issue the command: Invoke-Command -cn server1, server2 =scriptblock {xxx} interactively, it works fine, however when I try to read the list of computers from the .txt file (in the form of: server1, server2) the -cn parameter is a concatenation of all the server names into one. I've tried using a .split(",") when I read the file and that splits the names, but then my code issues the command for one at a time instead of simultaneously. Here is my code: