I definitely find Dratini to be the most rewarding pokémon to raise, and also the most tricky. Namely because it's so weak in comparison to everything else when you get it, and although it soon enough evolves into Dragonair, then its most powerful move is usually Slam, with acts as if it has about 20% accuracy for me :/
And when I eventually get it to the stage of Dragonite, it's so fun destroying the fighting-type trainers outside of the Spa on One Island to get it strong enough to take on the re-trained Elite Four :)
Charmander's also pretty rewarding to train. It has a really hard time against gyms (you practically need a Charmeleon before Metal Claw can take on Brock) to start with, but eventually you get a Fire/Flying behemoth with good speed and both attack stats being usable. So after being weak to gyms 1 and 2, neutral against 3 it finds itself super-effective against 4, neutral against 5,6,7, and immune to the main type of 8 :)