This paper investigates the performance of practical physical-layer network coding (PNC) schemes for two-way relay channels. We first consider a network consisting of two source nodes and a single relay node, which is used to aid communication between the two source nodes. For this scenario, we investigate transmission over two, three or four time slots. We show that the two time slot PNC scheme offers a higher maximum sum-rate, but a lower sum-bit error rate (BER) than the four time slot transmission scheme for a number of practical scenarios. We also show that the three time slot PNC scheme offers a good compromise between the two and four time slot transmission schemes, and also achieves the best maximum sum-rate and/or sum-BER in certain practical scenarios. To facilitate comparison, we derive new closed-form expressions for the outage probability, maximum sum-rate and sum-BER. We also consider an opportunistic relaying scheme for a network with multiple relay nodes, where a single relay is chosen to maximize either the maximum sum-rate or minimize the sum-BER. Our results indicate that the opportunistic relaying scheme can significantly improve system performance, compared to a single relay network.