Oh dear OP.
You asked for our thoughts and you've got them. The only one who seems angry on this thread is you.
"I agree, children should be taught to ask permission, but how do you teach that to a very active 3 year old that in a packed public place?"
As has already been said, by always giving the toy back to it's owner and saying "This belongs to X, you must ask if you can play with it" etc. It must have been as difficult for the grandmother to encourage her grandson to share as it would be for you to encourage your son to ask, yet you have been quite judgy about her and the boys parents (who weren't even there but have copped the blame from you).
"Many of you have slagged me and my son off on this post and I would just like to say that I have never told off another mothers child for taking/borrowing/playing with something of my sons in a public place"
You haven't been slagged off, you asked for opinions any you got them. You are upset because they aren't the opinions you thought you were going to hear, but you haven't been slagged off. You, however, have slagged off parents for being shit and asked "for fucks sake what's wrong with some people?" You started a thread that has a title slagging other people off.
Also, nobody told your son off. The woman sighed a thank you at you, not your son, in an exasperated or sarcastic tone. That's not telling anybody off. Poor woman was probably enjoying a few minutes peace while her grandson was playing and found herself refereeing a children's minor argument over a bucket. Lots of people would sigh and it wouldn't necessarily be a comment on you or your son when they did it.
"My parenting is far from perfect"
"Alot of you are obvioulsly such perfect mothers"
"Pearl - your children sound absolutely perfect - congratulations to you on raising them without fault."
The only person talking about being "perfect" is you OP. Nobody here is claiming to be perfect or suggesting that you aren't.