Your best bet is probably to use an existing transit routing engine (https://github.com/openplans/OpenTripPlanner/wiki or http://graphserver.github.io/graphserver/), for example.
There have also been some papers on determining the transfer patterns in a transit network. You might check out Fast Routing in Very Large Public Transportation Networks using Transfer Patterns: http://ad.informatik.uni-freiburg.de/files/transferpatterns.pdf