Firstly the routine explanation of how load average is displayed, using 'top' or 'uptime' you will see something like this:
Load Avg: 0.47, 0.53, 0.52
This indicates load for the last 1 minute, 5 minutes and 15 minutes.
So, what does this mean for your system?
High load means delays in processing, tasks become queued and users may experience service delay and timeouts. Typically everyone knows these numbers should be as close to 0 as possible, the lower the load the better but realistically a busy server can be doing a lot of work and a 0 load average just isn't going to happen.
What you consider a high load average depends on your hardware. Say for instance we have a single processor, single core server then our CPU at 100% capacity would be a load average of 1, anything above 1 means we have processes waiting in a queue and the CPU is unable to get to them right away. Where as a quad-core server with a load average of 1 would be at 25% processing capacity, and a load average of 4 would be 100%.
When is the load too high?
First of all, you shouldn't worry too much about the 1 minute load average - server traffic and activity can be unpredictable, spikes in the load are inevitable but if the 5 or 15 minute averages indicate your load is consistently high then you have something to worry about.
Waiting is bad, we never want long periods where processes are being queued so 100% load is very bad for us - it gives no room for new processes and we're risking delays in service. Personally I would recommend you try and keep the 15 minute load average below 50% - taking our quad-core server as an example, we should keep the load below 2 giving us a healthy amount of processing capacity to spare