Catching is the process that takes place when Google spider crawls your website and keep it in its cache and after crawling your website Google spider gives a index to your web-pages, which is used for search results and it is known as indexing
Indexing is a process to do a web search on search engines, while the process of caching refers to providing a snapshot of print content.
If we have a new website after first search engine crawler will read the site and after that, it will store all information in its database index in a different format, it will not place the content posted. As a result, the site appears in the results of search keywords optimized.
Google also takes a snapshot of each page on a web site and stores it in a different database known as cache database.
Different SE do crawling and indexing in different ways. For example, sites that have no-follow links pointed to them aren't crawled nor indexed by Google, but yahoo crawls and indexes them, only doesn't count them for ranking. So both processes of caching and indexing take place prior to page ranking and don't necessarily determine it.
caching means search engine crawler see your website for indexing and indexing means your website come on search engine index. So, According to me caching occurs first then indexing.
Sorry but I have to disagree. Caching does not mean the crawler has seen a website, Google’s cache is a snapshot of a website as it appeared on a certain date, so that if for any reason the site cannot be reached by a browser they can look at the cache instead.
Indexing means that Google has found your website and begun crawling it, though it may not find all the pages at once.
The cache is made during the crawl, though it may not appear immediately. When a new site or page is published, it will be searchable as soon as it has been indexed but it may not have a cache straight away.
In its simplest form, an index is a list of contents. In terms of search engines, it is a list of the urls on a website that the SE has crawled. To see which pages of a site have been indexed, type site: followed by the domain name (without the www.) .
for example: site:yourdomain.com
It is not a measure of the number of times your site has been crawled (visited) by search engines, it simply means that they have been crawled.
The cache is an image of the site the last time it was crawled, though it may take a few days to be updated after the crawl. If you click on the cache in google it will explain at the top of the page that this was the cache at whatever date, and that the current page may be different now.
When you view a google search page, the sites are shown as they appear in the cache. This is because it is faster for google to do this. But when you actually go to the site, you will see it as it is today.