I guess it depends on if you consider mega evolution evolving, or you just mean it in the traditional sense. If it's the latter, then I'm pretty confident in saying that, no, not all Pokemon evolve. I think a good case in point are some of the gimmick Pokemon, like Rotom and Castform, who already change forms, but don't actually evolve. If they did evolve, why would anyone even bother with their previous forms, when they'd probably be able to use them on their new evolved Pokemon? That just seems like an overall waste in the end, which is probably why they'll never evolve, even if a Pokemon like Castform could actually benefit from it.
As for mega evolution though, I could see 90% of single-stage Pokemon getting one at some point, much like Absol, Heracross, and a few others. I could even some gimmick Pokemon like Chatot and Kecleon getting them, but probably not Unown, Castform, Rotom, etc.