I would say SEO is very complected term to understand, moreover, if you try to understand competition then it is too complected because I see some websites on first ranking with pr0 but on the other hand some websites have good PR but there are not on the first position...
some websites have thousands of backlinks but there are not on the first position while some websites with few backlinks are on the first place.
IMtalk has PR3 but any normal website also have pr3 receiving 10 to 20 visitors per day... while IMtalk is very popular all over the web...
So what I would say that there is not one or two things which can be understood there are hundreds of points which you have to understand first...
Some example of points:
Domain Age
Unique and quality content
Quality of Backlinks (relevancy, natural, dofollow, nofollow, country specific domain name, static
pages, different IP address, continuity in building backlinks with proper ratio etc.)
Publishing content on website periodically...
On-page optimization factor.... (keyword density, hyper links, linking through pages, page load time, cms or simple html template, keywords in meta title, meta description, meta keywords, heading, title,
body, anchor text, comment etc.)
Link Building (it is very complected to understand....but we need to learn..)
Please clear all the points with your experience in replies!
Thanks