The primary difference between SEO vs SEM is that SEO is a way to get your web pages showing up higher is the search results organically (free) and SEM utilizes paid advertising to show your pages at the top of the SERPS (Search Engine Results Pages). SEO stands for (Search Engine Optimization) and SEM for (Search Engine Marketing).
When to use SEO only: Use SEO only when you are trying to rank for a keyword or phrase which doesn’t have a lot of big websites also ranking for it, and hence you have a much higher chance of ranking highly for this, then SEO alone should yield fast results.
When to use SEM: SEM should be used in addition to SEO, and not alone. However, you should also use SEM for keywords or phrases that are highly competitive, and dominated by bigger names and websites such as yours. In these situations the chances that you will rank highly for it, or even get to page 1, are very low. Here, using SEM will increase your chances of being found. Additionally, it can be used for time sensitive products, services or information. Also to promote last minute, or short term deals and discounts.