The GET method is Idempotent in HTTP sepecification means that multiple GET requests doesn't change the state of the server whereas POST is non-Idempotent.
In GET the data is passed in query
string which is visible in the address bar of browser, so don't send data through GET which you don't want user to see, like username/password in case of login page, use POST in this case.
Similarly, there are places where you should use GET like in a search page, if you are providing a search page to user where he/she can search things depending upon some keyword or criteria, you should use GET for that so that user can bookmark the page and in future if he/she wants to use the same search criteria he/she can come to it directly whereas if you use POST in this scenerio the search criteria can not be book marked.
These are some of the cases, however now you can think more by yourself