My son is 20 months old. Whenever he is asked to do something that he doesn't want to do, he either throws the closest object (a book, a toy, my papers, etc.) and/or finds the closest person (usually me), and smacks my leg while saying "AW."
A classic scenario is when he rolls his car on my laptop. My response is something to the effect of "Not on the computer, lovey." This results in the closest object within reach being thrown, and is followed with a bum-rush to my leg, then a WHACK.
In the case where lots of "pieces" are being thrown, like the train-tracks, or trains, or all of the little people who came with the train-set, I ask him to pick them up, and I'm finding that the calmer my request, the sooner he picks them up. Yelling "No!" or "Go pick them up right now!" has had less than positive results.
It's to the point that tonight when he was banging his trucks around, I just let him go, because I didn't want them being thrown at the table, or me, or his grandparents. He throws all his stuffed animals out of the crib when I put him down for bed, too. Then I tell him that it isn't nice to throw his friends overboard, and I pick them all up and put them back in.
Some times I chuck them back in, because it gets incredibly annoying.
I'm just not sure why it's happening because he's the sweetest little guy. But tell him that he can't do something? Look out.
Has anyone gone through this?
It's normal. It's all part of development and sometimes in my experience it's better to pick your battles (example do you reeeealllyyy need to go in there just to get all of his animals and put them back in?) As for him throwing and hitting. Again normal but not okay and you do have to redirect. And certain things can be avoided like a laptop being out of reach...find a designated spot for it when he is up playing. Toddlers tend to go for things they can't have lol.
Also very much agree with letting him you notice he is frustrated and then taking action by trying to help him.
Try rephrasing so it's less a "don't do this" and more of a "hey, can you do this". Sometimes no matter how nicely put it is, a negative comment will get that sort of reaction. A positive suggestion on the other hand can redirect the behavior elsewhere. It works great for my willfull and independent 26mo who when told 'no' or 'don't do that' will do it just to test the reaction. However if she's doing something like breaking/peeling crayons (drives me nuts!!!) and I want to get her to stop, I might say "hey, can you draw me a blue circle?" or I might do something as a challenge, for example putting away toys that she refuses: "I bet you can't get those toys in the basket before I can count to 20, ready, set, go!". Just lots of play - the kids have fun, parents get their way, everyone is happy!