As one of the world's most cosmopolitan cities, you can find restaurants serving food cuisine from nearly every country, some of it as good as, if not better than in the countries of origin.
Indian food in London is especially famous and there is hardly a district without at least one notable Indian restaurant.
If you are looking for other particular regional foods these tend to be clustered in certain areas and some examples are:
Brick Lane in the East End is famous for Bangladeshi curries.
Brixton for African/Caribbean.
Chinatown just off Leicester Square for Chinese.
Edgware Road in Marylebone and Paddington is popular for Middle Eastern cuisine.
Drummond Street (just behind Euston railway station in the London/Camden district) has lots of vegetarian restaurants - mostly Indian.
Golders Green for Jewish fare.
Kingsland Road for good cheap Vietnamese.
Finsbury Park and nearby areas for Greek and Turkish.
Tooting, East Ham, Wembley and Southall for authentic & cheap Indian eateries including authentic South Indian restaurants serving hot pongal, dosas, idlis and other South Indian "tiffin" items.
Other nationalities are equally represented and randomly dotted all over London. It is usually wisest to eat in restaurants on main thoroughfares rather than on quiet backstreets.