Basis Path testing just ensures the coverage of all the paths in the program but control flow testing test the conditions as well.
So for a simple example, if there is a decision node in the program as:
if( x >= 2 )
Here, in this case there would be two paths:
- x >= 2
- x < 2
But in control flow there would be three combinations, as following:
- x > 2
- x = 2
- x < 2
It was a very basic example, I hope that helps.