In my opinion nothing beats c/c++ for programming and C# or lua for scripting. As for engines, unity is nice but I love using Source 2 and Source 1 when I get the chance