I'm sorry but why C#? Isn't the big tech (Microsoft) in this case is a very big downside?
Why not LÖVE (Lua) for example? https://love2d.org/
There is also libGDX (Java) but not sure Oracle is any better than Microsoft. https://libgdx.com/
C# is open source now and has been for a while. Same as .NET
Only proprietary bit is the debugger (vsdbg) but there are open alternatives.
Lua is awful for anything large. It is untyped, refactoring does not exist, etc. C# is an amazing language with amazing tools and very good libraries.