grid based movement range indication?

I have all my scripts working for generating the tiles and the grid. Im storing all tiles and tile types generated at start in a List. The player object can detect if and which tile he is currently over…How do I determine the NSEW neighbor tiles of the current tile and show a range for movement of a certain range of tiles from the player? Pseudo code will work. Just need direction… Thanks.

The Problem is that you store the tiles in a list. If you store them in a 2 dimensional Array could easily get the neighbours just by taking the next x and y coordinate.