I recently switched from Ubuntu to Fedora and realized that Omnisharp in VS Code for Unity3D projects was not working correctly, even with Use Global Mono set to Always.
The fix ended up being simple: even though they are the same version, install Mono from the mono project’s repository, not Fedora’s.
First: Install mono from here:
Then, open VS Code and go to settings. To make this change for all projects, click User. To change for just this project (which I’d recommend) click Workspace. This will allow you to do your regular .Net development using the built-in mono (and eventually .Net Core).
Set Omnisharp: Use Global Mono to “always.”
That’s it! That should do the trick.