I am designing a site which has around 19 main links and each page consists of 8-10 sub pages. which is the best way to design the site?
Look at amazon.com home page - they have 14 links on the left navigation bar and 10 links on the top to the right of the logo (you may have to be logged in to see all of them).
They also have about a million links below the fold :-)
so, 19 links on the main navigation bar + 10 on secondary navigation is doable.
The big question is if it's wise, and in most cases it's far better to show fewer choices - and it's your job to convince the client the site will sell more with fewer choices (you can always quote experiments in the field (wikipedia, video) or offer to do A/B testing)
I suggest you start with this tutorial on information architecture: http://www.webmonkey.com/2010/02/information_architecture_tutorial/
Confirm you understand the objective
Ask a basic question: what is the objective of this page? Every site out there has millions of links, but the best ones only show the links that are relevant to the users's task at hand. Remember, every link on a page affects the overall visual coherence, so in effect, having lots of links will unavoidably affect usability. Google.com has a lot of links in its index but it has none at its first point of entry -- it relies on search.
So, consider some alternative methods of representing this structure:
Tweak the list content
If your client has some other reason for this structure, at the very least, group your links into chunks of no more than 5 links -- the eye movement will 'chunk' each list rather than scanning (which happens with lists of > 6 elements).
Also spend some time on the labels: users only read the first 2 words so keep your links to this.
Look at competitor sites
Also look at competitor sites (booking.com, kayak.com, hotels.com) to see how they deal with what I'm sure is the same problem.