My favorite Pokemon changed a lot over time.
When I was very young I only watched the anime since I didn't know the games existed so my first favorites were based on the Pokemon I liked in the anime. My favorites back then were changing very often and they were: Pikachu, Onix, Bulbasaur, Muk, Sandslash, Arcanine, Pidgeotto, Tauros, Kingler, Heracross, Dragonite, Hitmonlee, Charizard, Totodile and Lapras.
I stopped watching the anime when the Hoenn arc started and didn't come back to Pokemon until I finally relized the Pokemon games existed sometime in late Gen 4 and early Gen 5. But since I was older now my favorites didn't change as often as before. Arcanine was my favorite for a long time, then Excadrill took over for a short amount of time in Gen 5. After Excadrill I went back to Arcanine until I discovered/rediscovered my love for Dragonite. Arcanine stayed in my top 10 favorites to this day tho.
In early Gen 6 I rediscovered my love for Bulbasaur line, especially Venusaur thanks to it's mega so it joined Dragonite at the top of my list. Around the same time I also got into competitve battling and discovered how awesome Dusclops is and how annoying it can be for my opponents thanks to Eviolite. I also started to love its cool and creepy design as well as its lore so eventually Dusclops joined the Gen 1 duo and became one of my 3 favorite Pokemon.
So my favorite Pokemon for at least 5 years now have been Dragonite, Venusaur and Dusclops. I don't expect this to change anytime soon. ☺