Why & When to Evolve Your Pokémon in Pokémon GO
Like previous installments in the Pokémon series, as you progress through Pokémon GO you'll be able to evolve your Pokémon into more-powerful monsters with new and more-damaging attacks. However, unlike older entries in the series, your Pokémon won't simply evolve when they reach a certain level. Instead, you'll have to "feed" them a certain amount of character-specific candy to induce the transformation.
So why should you want to evolve your Pokémon? Well, because that's what everyone else is doing, and your weak, low-CP (combat power) Pokémon has a much higher chance of getting its ass kicked in a battle.
The amount of candy you currently have, and the number needed to evolve a Pokémon, can be found on a Pokémon's card. Open the menu by tapping the Poké Ball, then tap on "Pokémon" and select a specific Pokémon in order to view its information. As you can see above, this Charmander requires 25 Charmander Candy in order to evolve into a Charmeleon. (Charmander Candy also works to power up Charmeleon and its final evolutionary stage, Charizard.)
While some characters take more candy to evolve, it's usually well worth it if you can collect that much. The silly-looking Magikarp takes 400 candies to evolve, which means you have to catch 101 Magikarp to do it. But when you evolve your little lopsided fishy friend, he turns into the feisty and ferocious Gyarados, one of the rarest and strongest Pokémon in the game.
When you catch a Pokémon in the wild, you'll also get three of that Pokémon's candy. So if you're trying to evolve Charmander, for instance, you'll need to go out and hunt down more Charmanders in order to get enough candy.
Other than just capturing more Charmander, you can also get one additional Charmander Candy out of every "extra" Charmander you have already captured. Use the "Transfer" option at the bottom of the Pokemon's card to get one more candy from the Professor. (That means, you can get a total of 4 candies for each wild Pokémon you catch.)
Keep in mind that once you transfer a Pokémon, it can't be undone, so you're only going to want to discard your lowest-CP Pokémon (and selectively evolve and power up your highest-CP Pokémon).
You also get Pokémon-specific candy when you "hatch" a Pokémon from an egg—more than you do when you actually catch them. (The number is higher—but random—and you don't know which Pokémon you're going to get until it's hatched.)
Once you have the required number of candy, head back to that Pokémon's card and tap on the Evolve bar; your Pokémon will instantly mutate into its next form. You'll gain a bunch of XP points, add to your Pokédex (if you haven't caught the evolved form in the wild), and the Pokémon will have a much higher CP rating.
One Pokémon, the Eevee, can actually take multiple evolutionary paths. Depending on what you name your Eevee, you can force it to evolve into either the Flareon (if nicknamed Pyro), Jolteon (if nicknamed Sparky), or Vaporeon (if nicknamed Rainer). This seems to only work the first time around, though, so it'll be random otherwise.
If you are still collecting Pokémon and leveling up, it's a good idea to wait until you are a higher level player to evolve your Pokémon, since the higher your level, the higher CP Pokémon you'll find in the wild.
Hatched Pokémon will also have a higher potential CP than wild ones, so you should think about selecting them for evolution over the wild ones, too.
Finally, Evolution nets you a whole bunch of XP points, so it's smart to hold off on evolving until you can use a Lucky Egg to get double XP while you evolve a whole bunch of Pokémon all at once. It's possible to jump multiple levels up this way.
Check out this list of all the Pokémon evolutions currently active in Pokémon GO to figure out who to evolve!