Found a question on reddit, about taking a list, splitting it 50/50 randomly and assigning to 2 groups. Thought, why not?

  
$names1 = Get-Content C:\temp\Scripts\names.txt
  
$groupa = @()
  
$groupb = @()
  
$split = ($names1.Length) / 2
  
$split = [math]::Round($split)
  
for ($count=1; $count -le $split; $count++){
      
$randname = get-random -InputObject $names1
      
$groupa += $randname
      
$names1 = $names1 -ne $randname
      
}
  
$groupb = $names1
  
write-host "Group A is"
  
$groupa
  
write-host "…."
  
write-host "Group B is"
  
$groupb
  

Output is like this:

  
Group A is
  
Kenisha
  
Daria
  
Rebeca
  
Tawanda
  
Markita
  
Bo
  
Leon
  
Benny
  
Jay
  
Gertrudis
  
….

  
Group B is
  
Chieko
  
Jody
  
Macy
  
Kristen
  
Jerica
  
Evelyn
  
Dorine
  
Jacque
  
Lawanna
  
Odis