NAudioというオーディオライブラリがいろいろと便利そうなので使ってみました。
基本的なことは以下のサイトにまとめてくれています。
https://so-zou.jp/software/tech/programming/c-sharp/media/audio/naudio/
waveファイル以外にもmp3ファイル等でも同様のことができます。
waveファイルを単独で再生する場合
var sound = new AudioFileReader("sample.wav");
var waveOut = new WaveOut();
waveOut.Init(sound);
waveOut.Play();
複数のwaveファイルを連続で再生する場合
var first = new AudioFileReader("sample1.wav");
var second = new AudioFileReader("sample2.wav");
var third = new AudioFileReader("sample3.wav");
var playlist = new ConcatenatingSampleProvider(new[] { first, second, third });)
var waveOut = new WaveOut();
waveOut.Init(playlist);
waveOut.Play();
ファイル間の間隔を開ける事もできます。以下の例ですと、sample1.wavとsample2.wavの間隔を5秒開けることになります。
var first = new AudioFileReader("sample1.wav");
var second = new AudioFileReader("sample2.wav");
var playlist = first.FollowedBy(TimeSpan.FromSeconds(5), second);
var waveOut = new WaveOut();
waveOut.Init(playlist);
waveOut.Play();