The CRPG Addict has penned an editorial that spotlights the advantages of non-linearity in role-playing games while also proclaiming that an increase in linearity reduces the game's level of entertainment. I think there's room for both, actually, but here's their take:
The issue of linearity helps explain why some games are simply less fun to play even when they use the same game engine, game world, or game play. The Bard's Tale I and II, whose interfaces are nearly indistinguishable from Might & Magic, are a lot less fun because they force you to progress through the dungeons in a specific order. There is no sense of exploration. I enjoyed Ultima VII Part II much less than Part I for the same reason. The Icewind Dale series uses the same game engine as Baldur's Gate but is far less compelling because you're forced to move methodically from one chapter to another. The first time I played Neverwinter Nights, I left some quests undone in Chapter 1, assuming I could wander back to Neverwinter from Port Llast in Chapter 3. I was very disappointed to find out I was wrong--and for the dumbest of reasons. I'm blocked by trees! That's worse than Half Life's shotgun-proof door locks. Throne of Bhaal had a few issues, but I didn't find its linearity to be one of them. And Jade Empire wouldn't have worked nearly as well without the pre-planned shifts between the real world and spirit world.
The worst CRPGs are completely linear, railroading you through a series of maps and steadfastly refusing to allow you to backtrack. I'm talking about you, Dungeon Siege, and you, Jade Empire, and unfortunately you, Baldur's Gate II: Throne of Bhaal. At least Neverwinter Nights allows you to explore each chapter's areas in whatever order you want.