Flow. When pair programming works, you can pair together for hours and be very productive. I can recall some marathon pair-programming sessions where we mind-melded and got things done very quickly.
If there is an imbalance in skills, pair programming will sometimes devolve into one of the developers asserting control and dominating.
The lowest-common denominator form of pair programming "Can you take a look at my code?" is very effective for finding bugs. Simply having to explain yourself can reveal issues.
I hate the term "Can I drive now/do you want to drive" for pair programming.
If there is an imbalance in skills, pair programming will sometimes devolve into one of the developers asserting control and dominating.
The lowest-common denominator form of pair programming "Can you take a look at my code?" is very effective for finding bugs. Simply having to explain yourself can reveal issues.
I hate the term "Can I drive now/do you want to drive" for pair programming.