When I was a child and only had a few hundred cards, I changed the sorting a few times. Between type (because I also played with them), rarity and Pokédex number. The second criteria (for the same Pokémon was first level (because in the past there always was a level on the card). The Trainer cards used to be sorted by rarity or alphabet.
Now I have a few thousands of cards and I don't have the time to put them all in binders every time when I open something new, so only 60-70 % of the Pokémon and 0 % of the Trainers and Energy are organized.
Since several years I have had all Pokémon cards sorted by dex number (with megas and (pre)evolutions introduced later before or after their (pre)evolutions; e.g. all Eeveelutions together). Nex criteria for the same Pokémon is the release date of the specific card.
I never had the time to sort Generations 4-7 during the last 3-4 years.
But because this becomes too much work, because I always have to move cards when a new one comes out. So when I find time somewhen, I will sort by set. The promos will probably just be in a promo folder. I'm not sure about different languages and editions, though (First edition or not; English, Japanese, German, Korean, Italian, French). Because I only have little non-English cards compared to English, e. g. for Base Set it might be 95 % English, 3 % Japanese, 2 % German - and I don't speak about more than 200 Base Set cards or a complete set.