When a Pokémon has a higher form, a button evolve will show. Next to it will be the cost for this evolution in candies, varying between 12, 25, 50 and 100 based on the rarity of the Pokémon. When evolving it, multiple things happen:
- The Pokémon changes to its next form;
- The Pokémon increases in strength. Its CP goes up, however the percentage trained stays the same;
- The Pokémon's stats, weight, height and moves are randomised. The options are selected from a list that is dependent of the kind of Pokémon;
- The Trainer gains 500 experience.
Gaining 500xp for every evolution means that with a lucky egg, one can quickly amass thousands of experience evolving many critters. Remember, a Pidgey that costs 12 candy to evolve, still grants 1000xp with a lucky egg! Other than that, it means that a Pokémon found at a high percentage trained, this is the semicircle found underneath the Pokémon's CP, can quickly become a very strong Pokémon in the trainer's team when evolved. Lastly, the randomisation factor means that every time you evolve a Pokémon to it's final form, you roll these stats for the perfect combination to suit your team. Sometimes you will have to evolve quite a lot to get your moves just right.
Yes, as some of you are aware, the maximum CP you can train a Pokémon to increased every level the trainer gains. Therefore, a CP 500 Pidgeot might look unbeatable at level 12, but at level 18 you'll already want to transfer those for their candy. This also means you constantly need to sink stardust into your Pokémon if you want to keep it fully trained for gyms or such.
Now the interesting part, powering up your Pokémon, training it to be at its maximum potential. Every time you press that power up button, you will give candy and stardust to the Pokémon increasing it's CP with a percentage of it's max CP. Every consecutive power up requires more stardust and eventually more candy. The base damage of moves don't change as you power up, but your Pokemon's damage output increases based on damage modifiers.
Should I evolve this Pokémon?
Probably, if it's a decent percentage trained. You can really use that 500 experience and it will give you a stronger Pokémon
Should I power up this Pokémon?
It's your own choice of course, but I recommend you don't. Maxing it's training will cost a lot of stardust and candies, both of which can be spend more efficiently. Maybe when you're fighting a lot of gyms, found a really rare Pokémon or have the perfect combination of stats, but even then I wouldn't. Only through evolving, powering it up won't let it learn new moves.