Upvote:4
Since you mention Canada, let's take Canada as an example.
If you are flying to Winnipeg, but your flight has a 'layover' in Toronto (a pretty frequent occurrence) then you would clear immigration in Toronto. Once you have cleared immigration you go to the domestic terminal and board the flight from Toronto to Winnipeg, along with all the other people who are already in Canada and won't need to clear immigration at all. When you get to Winnipeg there will be no immigration or customs, since the flight has come from within Canada. This will be the same for any two cities within Canada.
Your single entry visa works fine - you enter Canada once, and after that you are just taking domestic flights.
This works pretty much the same for every country. Canada is just an example.
To answer the question in comments, no it is not possible in the above example to stay in the "transit area" in Toronto and clear immigration in Winnipeg. There is no such thing as a "transit area". International transit passengers (meaning those that are leaving on a flight out of Canada) simply remain in the "international" area. But the Toronto-Winnipeg flight will not depart from the international area. Only flights going to international destinations leave from there. You have no choice about how you do this.