The url can be as long as you want. Sometimes a "link" doesn't work because it's really not a link.
For instance, the results of a search engine search may look like a "link". In fact, it's a coded algorithm that is dependant on certain variables that you entered in the search....at least this is how I believe it works.
When you see lots of "+","%" or "=" signs in a link, it's generally not a true url and will fail.