An experimentalists answer:
Why do same/opposite electric charges repel/attract each other, respectively?
Because careful physicists have made an innumerable number of observations and have found that this is what nature does. There is a long history of observations before any theory could be solidified. They observed the behavior of attraction with some types , repulsion with others and defined the + and - to separate the two sets.
Classical electromagnetic theory modeled the behavior of charges very well , with Maxwell's equations. They show how, when positive and negative charges exist in nature they can be modelled with accurate mathematical solutions of the equations and one could think that your "why" would be answered by " because they fulfill Maxwell's equations".
Then quantum mechanics came as a revolutionary mathematical theory to describe phenomena measured in the microcosm, including charged elementary particles, and a theory was developed as explained in Michael Brown's answer above, which again models extremely well the behavior of charged particles, and your "why" can be answered by "because they fulfill quantum electrodynamical equations".
You must perceive then that the "why opposite charges attract" with the answer "because that is what we have observed" becomes "because we have modeled mathematically the observations successfully". Then the question becomes why this mathematical model, and the answer is "because it describes the observations", circular.
I am pointing out that "why" questions can not be answered with physics. Physics can be successfully modeled mathematically with postulates and using the model one can show how the behavior of positive and negative charges under all sorts of experimental conditions can be predicted accurately, but not "why" they exist. The why gets the answer "because that is what we have observed nature to do".