To help others with similar problem, I'm posting a solution though its late by 9 months :p I would have achieved sound recording in C# by using mciSendStringA in winmm.dll. First import the dll : Code: [DllImport("winmm.dll", EntryPoint = "mciSendStringA", CharSet = CharSet.Auto] private static extern int mciSendString(string lpstrCommand, string lpstrReturnString, int uReturnLength, int hwndCallback); Now, create a new device (named MyRecorder) : Code: mciSendString("open new type waveaudio alias MyRecorder", "" , 0, 0); To start sound recording : Code: mciSendString("record MyRecorder", "" , 0, 0); To save the recorded sound (to C:\MySound.wav): Code: mciSendString("save MyRecorder C:\\MySound.wav", "" , 0, 0); To stop recording sound : Code: mciSendString("close MyRecorder", "" , 0, 0); That's it ! For complete list of MCI Strings, go here : http://msdn.microsoft.com/en-us/library/ms710815(VS.85,loband).aspx I hope this post would be useful to many :smile:.