I've been reading about virtual particle exchanges in physics books and in Physics SA posts, where a particle interpretation of gravity and Coulomb interaction is established. The Feynman Diagram picture (combined with the snowball picture that a fellow contributor provided in a related post) serves to account for the repulsion part: grosso modo two particles in motion, a virtual photon/graviton, momentum change induces opposite motions ($\Delta \vec p \ $ and $ \ -\Delta \vec p$). Still, how can we account for the attraction (as a layman's analogy if not in formalism)?
The short answer is the Heisenberg uncertainty principle allows for the attraction. Suppose you have two opposite charges, and the one on the left emits a virtual photon with momentum directed leftwards. The left charge begins to move towards the charge on the right. Now, where's the virtual photon? It's momentum is some exact value directed left, so classically we expect that at a later time we will find the virtual photon at a new position further to the left of the original position of the charge that emitted it.
But because of the HUP, if it is in a state of precise momentum, then it's position becomes infinitely uncertain. Hence, there's an equal chance of finding the new position of left-momentum photon to be on the right of where it was emitted (i.e., where the other charge is located) as there is of finding it to the left. And that happens, the right charge can absorb that virtual photon and it's leftwards momentum, and lo the two charges are moving towards each other.
Now there's a new, weirder, problem. What is it then that distinguishes between attraction and repulsion? It seems like two particles have an equal chance of doing either, regardless charge. The resolution of this in QFT defies analogy to anything we are familiar with, and hinges on the fact that quantum particle states are described by a wave-function instead of a set of coordinates like we do with classical particles. The parity of the wave-function for our two charges will be either even or odd, depending on whether the charges have equal or opposite sign, respectively. When the wave-function of the virtual photon interferes with that of the charges, the pattern of constructive and destructive interferences that results depends crucially on whether the charges' wave-function is even or odd. In the even case, there is more destructive interference between the two (like) charges and constructive interference outside this region, meaning the charges are now more likely to be found in positions with a wider separation. The opposite happens if the particles have opposite charge.
The quantum mechanical phenomenon underlying the macroscopic effect we observe and describe as attraction repulsion is so much farther removed from the classical conceptions of the process than any sane physicist ever would have credited. For me, my first encounter with the ideas described above was when I really started to believe Bohr who famously said, " Those who are not shocked when they first come across quantum theory cannot possibly have understood it." In QM you don't understand things. You just get used to them.