Я думаю, что это мало что меняет, потому что в любом случае его нужно создать только один раз - поскольку вы играете один и тот же файл.
Объявите член класса типа SoundPlayer
и создайте его экземпляр с помощью инициализатора.
static SoundPlayer soundPlayer = new SoundPlayer(@"c:\media\click.wav");
или
SoundPlayer soundPlayer = new SoundPlayer(@"c:\media\click.wav");
и всякий раз, когда вам нужно воспроизвести звук, вам не нужно выполнять нулевую проверку против него, просто позвоните
soundPlayer.Play();
Для утилизации ресурса вызовите метод Dispose
в экземпляре, если вы его больше не используете, например, когда окно закрыто.
soundPlayer.Dispose();