The East Coast train company and West Coast Main Line operator Virgin Trains both start their "evening peak" from mid-afternoon, Which? said.
It added that this meant East Coast's evening peak now lasted four hours. By comparison, others companies, including Chiltern and Merseyrail, did not have an evening peak at all.
Which? also said that other companies made things "very confusing" for passengers. For instance, East Coast's morning peak to London ends at 10.05am unless you are travelling first class, or travelling with an off-peak day return or travelcard or on a super off-peak ticket.
Other companies are more straightforward. Merseyrail's morning peak ends at 9.30am, as does that of train company Northern at Leeds, Liverpool and Manchester.
A spokesman for the Association of Train Operating Companies commented: "Demand differs greatly at different times in different parts of the country, so it's not surprising that peak times vary."