Learning a new programming language is a lot like learning a new speaking language. Once you know an initial language then you’ll having a vocabulary of words and know the lexical rules of how to construct statements and phrases.
Learning a second language can be much harder because you have to break apart things you learnt subconciously. To separate words from their meanings. In terms of vocabulary this means identifying abstract concepts so that multiple labels can be assigned to them. i.e. both “hello” and “bonjour” are greetings in different languages. With language structure this can be more difficult with additional complexity added by things such as tenses and genders.
As hard as this is, once this hard work has been done, additional languages beyond the second can be learnt with less effort.
Some programming languages use different paradigms and work in a fundamentally different way to others. They force you to think in a different way before you can effectively use them but allow you to solve different classes of problems. Once you’ve learnt a paradigm, the languages that use it work in the same way and its usually then just a matter of vocabulary to move between them.
Once the initial effort has been put into learning the basic concepts your brain will be able to work in that way from now on and just like riding a bike, you’ll never forget. Although you may get rusty if you don’t oil the gears regularly.