How real is the physics engine?

I was thinking of using unity3d to demonstrate some basic physics, but I wonder how accurate the simulation is. As a first small test I just used two spheres that has the same Y and Z positions and different X positions. I add a velocity on the X axis on ball A and make it move towards ball B.

Since they have the same size and mass I would expect the momentum of ball A to be completely transfered to ball B (like shooting a pool ball cleanly on another), but after the collision both balls are moving in more or less the same speed.

Am I doing something wrong, or isn’t Unity good for simulating these kind of physics demos?

You have to keep in mind that the physics engine has to run in realtime and therefore it won’t be 100% accurate.
Try to lower the “Fixed Timestep”, which will increase the accuracy and probably make it accurate enough for your purposes. Check out Unity - Manual: Time

With a little more playing with physics materials I got the expected behaviour by setting the friction to 0 and the bounciness to 1. Now I just need to read more to understand why.