Its due to the way it reads and updates it's database. Deleteing the database should work, but only because the next time you load the project, it will go through the project and rebuild everyting it includes, which will still take time to do, especially if you include a bit of windows stuff, which tends to include alot of other stuff.
You can press Ctrl-J to bring up the list of intellisense commands from where you are too, you dont need to navigate into the menu, if your cursor is over a command, it should highlight that command if it is in the database.
One thing I have noticed though is that the database is built procedurally, top to bottom, so if you are working on adding some commands to a function at the top of your code, most of whats under it will not be included in intellisense until the intellisense parser can get through to it. I think it is mainly due to open braces and the parser not being able to see end of lines or where functions start and stop properly.
If it ain't broke.... DONT FIX IT !!!