I /hate/ this argument.
The election is not a game where you root for one of two sides and you "lose" if the other side wins. It is one of the few opportunities where "The People" get to give their say on which sort of government they want. By voting for a candidate, you say, "this person represents my interests best, he is the one I want to lead the government for the next 2 (representatives)/ 4 (president) / six (senator) years.
Even if the person you support does not win, your are still expressing your opinion on which things you want the government to support. The other candidates /will/ take notice of these opinions if it threatens their own chance of victory. If a significant percentage of people vote for the third-party candidate who promised to ban H1Bs, you can be that the major candidates will take that up as their rallying cry too (especially the one most threatened by that third-party candidate). It might not happen overnight, or even during the next election cycle, but if enough votes are at risk, the other candidates will modify their own platforms rather than lose the election.
Yes, it's probably true that ultimately only a Democrat or a Republican will get into office; historically and mathematically, the odds are in their favor. However, that's no reason to throw away one of your few opportunities to control your own government. Vote for the candidate who best reflects your own beliefs - whether he (or she) is a member of the two major parties or represents a third party. Yes, by doing so the "wrong guy" might get into office this year but honestly, that isn't as horrible as is often suggested (if the Republicans win this election, they aren't going to ship all homosexuals off to Gitmo, nuke Iran and forcibly return women to the kitchens; similarly, if the Democrats win, they aren't going to take away our guns, make us all take gay lovers and declare universal socialism).
The only ones who benefit from the idea that "voting for a third party is a waste" are the major political parties, who would prefer to maintain the status quo.
It's also important to remember that change takes time, especially since our political system is designed to be inefficient (and we should be grateful for that; you should be scared whenever government makes fast and sweeping changes. It will either be poorly thought out policy that will have a lot of negative repercussions or policy designed to benefit a very few). Just because "your side" doesn't "win" this round doesn't mean you should give up on them and vote for a candidate who doesn't represent you as well. If you - and enough other people - believe in something, your voice will eventually be heard.
So if the other guy stands for what you believe in better than the Democrats or Republicans, vote third party, even if you feel that by doing so you might be helping Clinton or Trump lose because they don't have your vote. It's the only real way you have to get the politicians to notice you.