DD is only 15 months, so I have no idea what I'm doing is working. I try to model sharing and turn taking for her with both language and action. I share with her, daddy, the cats, dd... whoever we're with. Daddy shares too, but the cats don't.

We don't, of course, share everything. She hears things like, "sorry baby, coffee is for mommies" too.
We practice turn taking with toys and stuffed animals... and I talk about what we're doing. I don't think it's going to have a big effect in the short term (though she loves the turn taking games), but by the time she's old enough to understand, she'll have heard "please," "thank you," "could I please have that for a minute," and "would you like to share some of my xxxx", etc. thousands of times. We don't ask her to take turns with her favourite bear or toy of the day or when she is deeply engaged in any activity. I don't want her to equate sharing with self-sacrifice or interruption.
When she's playing with other kids, I try not to interfere too much because I don't expect her to have internalized the sharing examples by this point. Besides, if she never has anything taken from her, how could she understand how frustrating it can be? I only step in if dd tries to do something that is obviously going to upset another child. However, there are other parents who don't share this philosophy, so I'm always ready to distract or redirect dd before
they step in. I do worry about bit about the lack on consistency on my part in doing this, but am not imaginative enought to come up with another solution. If we're at a place where it's not acceptable to just push other kids out of the way (the zoo, the library, the science museum, etc), I'll exert a bit more control (but always talking about why we're waiting, etc.).