@mezz@jezebelley I would agree with this too. Python is great, but it's very easy to make mistakes and not know why things work sometimes. It's a nice 2nd language and a requirement if you want to get into machine learning.
C# and Java are very similar, but my personal bias is to C# given its implementation of generics (something you'll learn about later). It's also extremely easy to create an executable with C#. I'm sure it's possible with Java, but I've not dug too deep into it.
If you were getting a computer science degree today, the professor might first have you jump into C++. So if your goal is to learn first, create second, C++ will absolutely teach you the fundamentals that C# hides from you.
I absolutely love Rust, but it would have been an overwhelming challenge to learn Rust first. I would never suggest it as a first language.