In general, employees can't be forced to work more than 48 hours per week but they're free to enter into an agreement to do so. So, it's unlikely that there's anything illegal with your colleague working so many hours:
http://www.direct.gov.uk/en/Employment/Employe es/WorkingHoursAndTimeOff/DG_10028439
Unless you're in a job which has a statutory pay scale (such as teaching) or working for a firm which has entered into a collective agreement with a trade union, every employee's contract with an employer is entirely separate from any other employee's contract.
For example, an employer could have two employees doing exactly the same job. He might choose to pay 'employee A' �6 per hour, with unpaid breaks, no hope of overtime and 20 days holiday per year. At the same time he can pay 'employee B' �60 per hour, with paid breaks, unlimited overtime and 20 weeks holiday per year. That would be entirely legal as long as the decision to offer different terms of employment is not based upon illegal discrimination (i.e. based upon the sex, age or race of the employees).
Contrary to Stu Dent's post, employees do not have a general right to 'fair treatment' at work and I can see nothing illegal in the practices at your firm.
Chris