I am a seasoned engineer, worked up and down the stack (from mainframes to servers and frontends). I always liked playing games as well.
I am looking for a new "hobby", or something I can continuously build and improve, without it being another web application.
I can do Go, Rust, Python, JavaScript. A bit of C. But no C#, C++.
I know of Unity, but I haven't find a clear: That's the path for a newcomer to "publish" their first game. I don't care much about monetizing it, I just want to have fun and build stuff.
Is Unity the best way to go?
I wouldn't touch Unity after their recent behavior. Try out Godot. It's FOSS, there are forks supporting different languages and your projects won't be beholden to the whims of a single company trying to squeeze money from you.
If you want to try something more low level, I'd suggest SDL3, with whatever language you like.
Try Raylib. It doesn't sound like you'll need much more than progressively using more advanced libraries, and Raylib is an excellent beginner graphics library. You'll want C or C++ even though it has bindings for a lot of languages, but with C/C++ you can then go to the more lower level libs.
I'd give Löve2D or Godot a go
Yes, and use C#. Just keep at it for a while. At least a month. If you don't like it you can change platforms, languages.
With Unity you need to learn a lot about how Unity does things. All the tutorials will tech you how to assemble components and wire them up using the editor. You'll build a scene of game objects with c# scripts attached to them. It can be very fast to get a simple game working.
I imagine it's a little like learning Photoshop or Flash where you attach scripts to different parts of your image.
I use Unity all day for my day job, but I don't use it for my side projects. It's big, slow, and clunky. It's not really all that fun.
For my side projects I prefer a code only solution and have played around with Raylib, Love2d, Pixi.js, and Three.js depending if I want 2d/3d or browser/ standalone.