How to choose appropriate drinkware for cocktails?
The most obvious difference is that a highball glass is much larger: 8 to 12 ounces as opposed to 4.5 ounces for a martini glass. Cocktails served traditionally in a larger glass usually include a large quantity of mixers, such as a Tom Collins (served traditionally in a Collins glass, 10-14 oz, though a highball would be appropriate), which only contains about 2oz of gin and is topped off with a large quantity of soda water, or a Cuba Libre (traditionally served in a highball glass), which contains mostly Coca-Cola with a small amount of rum. On the other hand, cocktails served traditionally in smaller stemware, such as the Martini, may contain nothing but the alcoholic ingredients (gin and vermouth). Therefore, they require smaller quantities before one would be inebriated, and thus are served in smaller glasses. Furthermore, stemmed glasses keep your hand further from the (presumably cold) drink, thus keeping it colder longer, important for drinks traditionally served neat (whereas a highball would have room for ice).

If you ask an enthusiast, the shape of the stemware used can be crucial; for example, red wine apparently tastes better after oxidation, so red wine glasses maximize surface area to increase the amount of wine that oxidizes, while white wines do not oxidize well. Champagne needs to stay bubbly, so a champagne flute tries to minimize the amount of bubbles that escape, while some alcohols have a pleasant aroma and thus benefit from wider glasses like a sherry glass that maximize the amount of aroma that escapes. 

However, for many average consumers, stemware is stemware is stemware. The differences may or may not be enough to be noticeable to people who are not wine enthusiasts. I would say, if you're looking to stock a kitchen, get a couple types of stemware you find attractive and improvise rather than trying to make every drink in its own special glass.