Создавать DLL на C# одно удовольствие, нужно просто написать класс без функции Main.
using System; namespace MyClass { public class My { public static string MyStrimng(string s) { return s+"Hello"; } } }
Осталось только правильно скомпилироваться, ключ /target нам нужен, что бы указать, как будет компилироваться проект library самое то, ну и на выходе указать название файла. Вот полный пример BAT файла.
csc.exe /target:library /out:Main.dll Main.cs
В результате компиляции у нас появиться DLL.
Обратите внимание класс должен быть публичный, а методы которые будут доступны должны быть описаны как static. И еще старайтесь в именах не пересекаться стандартными именами. Например использование имени Main для DLL грозит ошибками.