List of Experience Points sources

Trainer can obtain Experience Points in several ways. The lisings below show those ways and the regular amount of EXP gained in each.

General experience
Experience gained through general gameplay.

Capture experience
Experience gained through capturing Pokémon.

Hatching experience
Experience gained through hatching Pokémon Eggs.

Spinning Photo Discs experience
Experience gained through spinning Photo Discs in PokéStops and Gyms.

Gym experience
Experience gained through interacting with Gyms.

Raid Battle experience
Experience gained through completing Raid Battles.

Friends experience
Experience gained through Friends system.

Trivia

 * The highest possible amount of EXP possible to be gained in catching Pokémon is, when Trainer catches it for the first time with excellent, curveball, first throw, and with bonuses such as: first catch of the day, seventh day in a row, expert handler, and using Lucky Egg while there's an event with triple XP. Which results in 20,160 EXP in total.