I was making Player in vb WPF and just this worked for me. It closes other instances. Hope it helps you. Just convert to C# :)
Imports System.Threading
Private Shared appGuid As String = "c0a76b5a-12ab-45c5-b9d9-d693faa6e7b9"
Private Shared mutex As Mutex
Public Sub New()
InitializeComponent()
Dim mutexCreated As Boolean
mutex = New Mutex(True, "Global\" + appGuid, mutexCreated)
If mutexCreated Then
mutex.ReleaseMutex()
End If
If Not mutexCreated Then
Environment.[Exit](0)
End If
End Sub