The transaction you want to execute is a variant of "Bill to" "Ship To" model.
A is seller in Maharashtra, B is Buyer in Gujarat and C is Consignee in Delhi
A's invoice will show Buyer name & address of "B" and Consignee name & address of "C". A will charge IGST and Place of Supply will be location of B.
Transporter can carry goods direct from A to C.
B will raise a separate Invoice to C, charge IGST and mention Place of Supply as location of C.
~~~~~
If you design the transaction with B taking delivery in Gujarat in between then,
A issues Invoice with Buyer & Consignee shown as "B", will charge IGST and Place of Supply will be B's location.
B will then issue invoice with Buyer & Consignee shown as "C", will charge IGST and Place of Supply will be C's location.