In basic terms:
Anti-Semitic: Someone who hates, is hostile, and/or prejudicial towards Jews simply for the fact that they're Jewish. Jew can refer to those whose religion is Judaism, or those who aren't necessarily religious but descend from uniquely Jewish communities. Irregardless of which one (or both) a Jew may be, the term can apply to bigoted things said and/or done to them on the basis that they're Jewish.
Anti-Zionist: Historically, it's someone who opposed the establishment of the State of Israel. Given that Israel WAS established in May 1948, the definition has changed a bit. Now, it's discrimination, disagreement, hostility or hatred towards Zionists or Zionist support of Israel. Zionist doesn't necessarily have to mean "Jew", as supporters of Israel could be Christian, Buddhist, atheist, or anything else. Some people really hate that people can support Israel, so the term "anti-Zionist" still has relevance. That includes a few Jews, though most are very much not anti-Zionist.
Anti-Israel: Discrimination, hatred, of hostility towards someone on the basis that they're Israeli. Or, someone or something that engages in something that uniquely targets Israel negatively, from boycotts to terrorism. There is a specific focus on the nation and its people, and not its supporters. I suppose a difference between this and anti-Zionist is that an anti-Zionist who isn't anti-Israel would work with an Israeli (as long as they're not particularly patriotic) whereas an anti-Israel individual who isn't anti-Zionist would boycott anything and everything Israel but won't avoid someone in another nation who does actually support Israel more than just thinking it should exist.
Now, while there are distinguishing definitions, the delineation isn't so clear. Obviously anti-Zionist and anti-Israel overlap a lot, and for many people they don't have the nuance to really see the difference. Some people are quick to point out the difference between anti-Semitic and the other two, but really do fail to recognize that in practical terms many who hate Israel do hate Jews as well.
For many instances, there might as well be no difference. They hate Israel, they hate Jews, and they hate the supporters regardless. Furthermore, many mix up the terms so we can't always know what they mean. You'll have people blame the Jews when they just mean Israelis or talk about Zionists when in context could only be talking about the Jews. I'm Jewish, and Zionist, but I'm not Israeli; yet, I've been called an Israeli by many people who hate them or all of the above.
Someone who has experienced all three, on this very forum