I am Personally using 24db grid arrays for both of my long distance connections, 1 is 2.1km and the other is 9km. I run the APs in B mode only and have no issues even with the limited bandwidth of B mode. Ping times are typically <3ms static (no treaffic) and <15ms loaded.
Try searching for "grid array" they come in 15,17,19,21,24db configurations. The biggest advantage with grid arrays over parabolics is wind resistence.
Regards
Fred