After defeating the Champion, if you take out Charizard, Aerodactyl or Dragonitefrom their Poké Balls (via the Party menu), you can fly very high off the ground. This allows you to fly past most obstacles, including fences, trainers, low-lying houses etc. However, you cannot fly past gatehouses.
In addition, you can now encounter wild Pokémon while flying up high. These include rare Pokémon like Charizard and Dragonite. Also, if you’ve encountered the Legendary Birds in their nests, there’s an extremely low chance of finding duplicates of them while flying.