I'd like to defend a couple characters before I go on my rant. I like both Kaepora and Navi, and fail to understand why they are so unpopular. As games have evolved and worlds have grown, the need for helper characters has increased; Ocarina of Time is an early (but my no means the earliest) example of a game that spammed hints because of its complexity. In truth, Navi and Kaepora are only annoying when they bring the game to a dead stop to point out the obvious; however, what they point out was not always obvious on a first playthrough, and these sequences only occurred a limited amount at the beginning of the game.
Both characters' personalities are fantastic; they remain in the background for the most part, but act as helpful guides. The owl's a mentor, much like the King of Red Lions, while Navi herself is more of a close friend who sort of represents Link's childhood. I found dialog with Navi especially poignant later in the game, when Link's childhood seemed farther and farther away (even while time travel was still possible, Link was changing). She represented innocence, something severely lacking in the tattered and broken Hyrule with which we were presented. As a character, she was phenomenal, and I always crack a smile when she delivers one of her obvious hints as the game winds down. Navi, in fact, is one of my favorite characters in Zelda canon, and quite possibly my favorite helper character in any game, barring Issun from Okami.
My least favorite character in the entire Zelda franchise is Midna, but this thread is under "classic Zelda," a fact I only just noticed. I'd written up a whole rant about it too. I'll post once I'm certain that the thread can encompass newer games.
I suppose the most annoying classic character is Tingle, though he doesn't show up frequently enough to annoy me very much.