Ido provides a very convenient way to find files and switch buffers in Emacs.
Interactively Do Things
A mode for Emacs that helps finding files and switching buffers by displaying a list of possible completions and narrowing the list as you type. Also have fuzzy matching, so that not only the initial substring of a completion candidate is matched.
Can be used as a library for completing read in the minibuffer.
More info
Ido stands for Interactive Do. It provides a very convenient way to find files and switch buffers in Emacs. It switches between buffers and opens files and directories with a minimum of keystrokes.
It is a superset of iswitchb, the interactive buffer switching package by Stephen Eglen.
As you type in a substring, the list of buffers or files currently matching the substring are displayed as you type. The list is ordered so that the most recent buffers or files visited come at the start of the list.
The buffer or file at the start of the list will be the one visited when you press RET. By typing more of the substring, the list is narrowed down so that gradually the buffer or file you want will be at the top of the list.
Alternatively, you can use C-s and C-r (or the right and left arrow keys) to rotate buffer or file names in the list until the one you want is at the top of the list.