SEO, stands for search engine optimization. SEM, stands for Search engine marketing, which include SEO and on search engine paid advertising.
SEO, short for search engine optimization, is the process of influencing the rank or position of a website page in a search engine's "natural" or un-paid ("organic") search results.
Keyword or key-phrase is the search-term or terms that businesses are looking to rank for, basically these are the words & phrases you want your website to pop up in 1st position for, when a search is conducted.
Google have a market share of more than 80% of global search, while Yahoo + Bing + Baidu + Ask + AOL + Lycos + all the other search engines have a collective market share of less than 20%. That's why having your site in Google's top results is way more important than being in the other's top results.
Each search engine have a set of rules, called algorithm, these rules determine what websites should be on top and what websites should not appear in top search results.
SEO optimizes websites for the search engine, by implementing the rules that influence the rank in search results.