Марк прав в том, что это сложная проблема. API waveOutXXXX является древним (он предшествует Windows 95) и требует более подверженного ошибкам кодирования, чем вы думаете. Вам будет проще взаимодействовать с API в C ++, чем с C #. Просто убедитесь, что это то, что вы действительно хотите сделать.
Если ваш поток имеет формат, отличный от данных файла WAV (например, MP3 или WMA), вам придется выполнить дополнительный этап декодирования данных в формат WAV и воспроизведения его с помощью API waveOutXXXX. Найти хороший компонент для декодирования MP3 сложнее, чем вы ожидаете - я думаю, это связано с ситуацией с лицензированием Fraunhofer (вы должны платить им, если вы используете код MP3 любым способом).
Я бы нашел готовый продукт для этого, если только вам не нужен опыт обучения.