Using net8.0-windows or net8.0-macos gives you access to os specific stuff like UI elements.
R.e Q1
For most plugins, you can just use net8.0 so your code targets both platforms without any specifics, such as Windows Forms.
If you want to make UI you can indeed use Eto.
R.e Q2
There’s not much reason (that I’m aware of) to use net8.0-macos for Rhino Plugins.
We don’t need to do much to support these. When you choose these frameworks dotnet builds a package for each one, Yak will happily accept any and all frameworks and load them as necessary.
TL;DR use net8.0 and if you have issues, come back to this thread.