Which party have to be online during garbled circuit-based MPC protocol?
Alice can construct a garbled circuit for $f$, send to Bob the keys corresponding to her input, and use oblivious transfers to let him learn the keys associated to his input. After that, she can go offline. Bob can then locally compute his output $a$ (meaning, he does not have to be online during this part of the computation). Then, he plays with Charlie the same way Alice played with him: he must be online to send to Charlie a GC, some keys, and execute oblivious transfers. Both can go offline after that, and Charlie can locally compute his output.