Currently, pandas-gbq calls QueryJob.result() and Client.list_rows() directly
https://github.com/pydata/pandas-gbq/blob/46c579ac21879b431c8568b49e68624f4a5ea25e/pandas_gbq/gbq.py#L561-L564
This is because the max_results parameter is needed, but not available in to_dataframe.
Currently, this is not a problem except for some duplicate code, but it may keep pandas-gbq from benefiting from the "fast query path" changes currently being designed.