In QFT, this is mathematically as evident as the answer to the question:
"is there any particular reason that the sum of a number and its negative give 0".
If you want a more intuitive answer, in QFT (which is a relativistic theory, so treats space and time in the same way ; just as you can go to the left or the right, you can go to the future or the past), antimatter going "forward" in time is the same as matter going "backwards" in time. You can hence view the matter-anti matter interaction as matter that came from the past into the future, and at a certain point, went back into the past again. You, as an observer, who travels forward in time you will see the two entities of the same matter particle in your slice of time, one going forward (the so-called particle) and another one (which is in fact the same one) going backward in time, but which you observe as an antiparticle going forward.
When you advance your timeslice, you'll come to the point where the particle "bounced back in time", which you, going forward, interpret as an annihilation.
In order to "bounce back", the particle has to interact with something, usually the electromagnetic field (otherwise it just goes on straight forward). This interaction causes the EM field to be excited, and so the net result you observe is a particle and an antiparticle meeting, disappearing and two photons to appear. The process is called an annihilation reaction.
cheers,
Patrick.