A fish sandwich is, most generally, any kind of sandwich made with fish. The term is frequently used to describe food made with breaded, fried fish, which are commonly found in fast food venues.
In American English, a sandwich is any two pieces of bread with filling, including rolls and buns; in British English (and also some other national English varieties such as those of Australia and New Zealand), the word sandwich is defined more narrowly, to require the pieces of bread to be sliced from a loaf, and a roll or bun with filling would not generally be called a sandwich. Thus, what would be considered a fish sandwich in the US may not be considered a sandwich at all in some other English-speaking countries, if it is on a roll or bun as opposed to sliced bread. In Australia, a piece of whole fried fish served on hamburger-style bun would be called a fish burger; that would not generally be considered to be burger in American English, since in American English a burger requires a patty made of ground meat, so something could only be a fish burger if it contained a patty made of ground fish.
...the British are so particular about sandwiches that they use the word less than Americans do. In Britain, a sandwich is some filing between two slices of bread. Not a roll. Not a bagel. Not a baguette. Without sliced bread, it's not a sandwich. The American sandwich prototype is much like the British: savoury filings within two slices of bread. But American sandwiches are allowed to wander further from the prototype, because they interpret the 'bread' requirement more loosely. An American sandwich can be on a roll, on a bagel, on a bun, on a croissant, and at breakfast time, on an English muffin...
((cite book)): CS1 maint: date and year (link)