I started working in a .NET shop a few months ago and have finally sorta-kinda gotten my Emacs configured the way I want to in terms of C#. If there are any specifics you need help with, shoot me an email or something!
But yes, basically
(require 'csharp-mode)
(require 'omnisharp)
(setq omnisharp-expected-server-version "1.32.8")
(add-hook 'csharp-mode-hook 'omnisharp-mode t)
Then omnisharp should be able to install and start a Roslyn server on its own with the corresponding commands.The annoying issue that at first prevented this from working was that on OS X I also needed
(require 'exec-path-from-shell)
(exec-path-from-shell-initialize)
But figuring this stuff out was only a matter of reading the omnisharp-log buffer and guessing what the errors may be caused by. (setq omnisharp-server-executable-path "C:\\path\\to\\OmniSharp.exe")
So it can actually start the OmniSharp server (EDIT: Possibly because I haven't installed OmniSharp so much as just unzip it)