SEO- Search Engine Optimization, SEO is used to increase a visibility of your site. It has several tools that used to increase traffic on your site. SEO is helpful to get more PR from google and appear at the top of the SERP.
SEM- Search Engine Marketing, SEM is also used to increase traffic on our site, it is a one type of advertisement tool. You have to pay if you want to show ad of of your product to visitors on search engine. PPC is also concept of SEM. It will create a link of your site and put it on sponsors link.