埋め込みの方法自体はこちらを参考に。
Ralf's Sudelbücher - Single Assembly Deployment of Managed and Unmanaged Code
http://weblogs.asp.net/ralfw/single-assembly-deployment-of-managed-and-unmanaged-code
プロジェクトへのリソースの追加は、こっちを参考に。
埋め込むし、Visual C# を使用してリソースにアクセスする方法
https://support.microsoft.com/ja-jp/kb/319292/ja
Visual Studio上でDLLをプロジェクトに追加し、以下のように埋め込みリソースに変更する。
テキスト ファイルまたはビットマップのいずれかを右クリックし、[プロパティ] をクリックします。
[プロパティ] ダイアログ ボックスで、[ビルド アクション] プロパティを見つけます。既定では、このプロパティを [コンテンツ。プロパティをクリックし、ビルド アクションプロパティを埋め込まれたリソースに変更します。
リソースの名前は「MyNamespace.xxx.dll」で参照できる。
上記の方法だけだと、配布時のexeにはDLLがつかないものの、
リソースをファイルに展開してしまい、そのまま削除はされない。
そこで、ファイルを削除しようと試みるも、プロセスの実行中のためDLLは削除できない、という状況に陥る。
そのため、DLLをunloadしてから、削除すれば問題ない。
C#からDLLのアンロードは以下のとおり。
c# - Unload a DLL loaded using DllImport - Stack Overflow
http://stackoverflow.com/questions/2445536/unload-a-dll-loaded-using-dllimport