There is an easy answer to the range question and that is “elevation is your friend”. Elevation improves the line of sight to the horizon it is also good if you are on the road and trying to communicate with another station a few vehicles in front of you, it may not be possible to talk between two handhelds but once you put an antenna outside and higher than the roof of the car communications might be possible, just a little elevation can make a big difference.
The advertised gain of an antenna is not the antenna amplifying the signal but just collecting or sending the signal in a specific direction, just like focusing a torch light the bulb produces the same amount of light, but the lens focuses it in to a narrow beam of light. With this in mind if the antenna is too directional, then you may not hear stations that are not in the reception “window” of the antenna.
Most UHF CB antennas are vertical poles and send the signal out in a circular pattern around the antenna (like a donut shape with the antenna in the middle) if an antenna has more gain this donut is flattened between the top and bottom so more signal is concentrated in horizontal direction. This is great if the other station is directly in front at a 90° angle to the antenna then all the signals are collected from that station but if they are on top of a hill at 45° angle then they may not be in the reception “window” of the antenna and therefore the signal may be very weak.