The TORCH time-of-flight detector is designed to provide a 15 ps timing resolution for charged particles, resulting in K/pi (p/K) particle identification up to 10 (15) GeV/c momentum over a 10 m flight path. Cherenkov photons, produced in a quartz plate of 10 mm thickness, are focused onto an array of micro-channel plate photomultipliers (MCP-PMTs) which measure the photon arrival times and spatial positions. A half-scale (660 x 1250 x 10 mm^3) TORCH demonstrator module instrumented with customised MCP_PMTs has been tested in a 5 GeV/c mixed proton-pion beam at the CERN PS. The MCP-PMTs with the active area 53 x 53 mm^2 and granularity 64 x 8 pixels have been developed in collaboration with an industrial partner (Photek). With 30 photons per particle detected, the 15 ps per particle time resolution requires single-photon resolution of 70 ps. The timing performance and photon yields have been measured as a function of beam position in the radiator, giving measurements which are consistent with expectations. A possible TORCH design of the particle identification system in the LHCb experiment has been simulated and the potential for particle identification performance for high luminosity running has been evaluated.