Creating the project
Simply create a .net class library assembly. Starting with ReSharper 2018.2, the project should be a class library that targets .NET Framework 4.6.1.
It is strongly recommended to create a test assembly. This should also be a .net 4.6.1 class library project, and should include a project reference to the main plugin assembly.
The plugin can consist of multiple assemblies, however care should be taken when introducing dependencies on third party assemblies and packages. These assemblies need to be copied to the root directory of the ReSharper installation, and can easily clash and overwrite existing versions of the same files.
There are several approaches that can be taken to mitigate the risks with third party dependencies (e.g. rebuilding with a unique name, or packaging as custom NuGet packages), but it is recommended to only taken dependencies when absolutely necessary.