Good advice here already. I'll just add that my youngest was hell on wheels at that age, so I have some in-the-trenches experience on this, perhaps more than some. Anyway, my advice, for what it's worth:
1) Make sure the child is sleeping enough. Put her to bed EARLY, like 6-6:30pm. I know that sounds insane, but trust me on this one. No, she will not wake up for the day at 3am. You'll be surprised, she will probably wake up later in the morning than she does now. A well-rested child will be slightly easier to manage.
2) Watch her diet. Make sure you are feeding her often. No processed foods. Get a lot of protein in her, healthy fats, and no refined carbs. No juice. Again, a well-fueled child is easier to wrangle. Protein is KEY for afternoon snack. Give her a hard-boiled egg, or some cheese, or meat. I was surprised how much protein can steer a child away from meltdown in the late afternoon.
3) Pick your battles. Rome wasn't built in a day, mama. Have just a handful of things she needs to remember. At this age, if you can get her to not pull the cat's tail, and not bite grandma, you're doing GREAT. You don't have to take her to tea with Queen Elizabeth, at least not today. You have time to work on civilizing her.
4) Before transitioning to a new activity, give her some warning. Then she doesn't feel like you're just swooping in and ruining her good time. As an example, "Sophie, in 5 minutes we will clean up the toys and go eat lunch." (Notice, I didn't say "Okay?" or "Do you want to...?" because that makes it her choice, and it's really not her choice.) Then in a few minutes, "Sophie, in 2 minutes, we will clean up the toys and go eat lunch." And finally, "Sophie, it's time to clean up the toys now." If she is overwhelmed at cleaning up the toys, help her by saying, "Pick up the dollies and put them in the basket" and then "You did it! Now pick up the trucks and put them in the basket."
5) Limit her choices. Instead of, "What do you want for snack?" try "Which one: cheese or yogurt?" And instead of "What do you want to do today?" go with "Would you rather play in the back yard, or go for a walk?" Making choices can be difficult for a little kid; giving her just a couple of choices is easier for her to process.
If all else fails and she ends up in total meltdown (it will happen) due to frustration, you're best off putting her in a safe place (the middle of her room, maybe) and calmly saying, "I see you're upset. When you're feeling better, you can come out." And then leave the room so she can get hold of herself. Sometimes they are just over-stimulated and need a break. Yelling at them just makes it worse. Toddlers feel like they have very little control over life, themselves, their toys, their food... you just have to do your best to keep things on an even keel and stay calm. Try to react the same way every time, so she knows what's coming. She will react more predictably when she knows what to expect each time.
And know that this, too, will pass. She won't be 2 forever. (Which is the only reason my youngest still lives... ;)