Can someone explain in detail the exact differences between 2 way transactional replication and peer to peer replication?
generally transactional has a publisher and a subscriber, with some updating from the subscriber, peer to peer replication shares the same data in more of a node environment (often over long distances) and would be more suitable for load balancing.
I'd go straight to technet for the overview http://technet.microsoft.com/en-us/library/ms151196.aspx
As there is no specified technology, I'll try to explain it first topologically then by the example of Microsoft SQL Server Replication types.
These two options are to implement the case when you need to push updates from publisher to subscriber and otherwise from subscribers to the publisher meanwhile propagating updates to peer subscribers. You can configure both options, I mean you can create 2 different transactional replications(publisher->subscriber; subscriber->publisher). Or in newer versions SQL Server you can implement special peer-to-peer replication which is doing basically the same as bidirectional replication. Worth to remind that in both cases updates on subscriber can cause conflicts which will generate an error and stop replication until manual solution is provided (though servers will continue to work independently).
Also bidirectional replication can provide improved performance.