Portsmouth to St Malo ferry crossing
There is only currently one ferry company offering transport between St Malo and Portsmouth, and that is Brittany Ferries, although they also sail ferries between Portsmouth and Caen, Cherbourg, Bilbao and Santander.
Prices vary depending on dates, times, whether on foot or taking a vehicle and whether you book a cabin or just a seat, but for a single foot passenger with a reclining seat ticket, prices start from around £30 each way. They run a large number of ferries all year round, so it's easy to get a crossing at a time that suits you.
The crossing itself is fairly long, taking roughly between eight and eleven hours, however Brittany Ferries do their upmost to ensure that it is a pleasant trip, by providing bars, restaurants, shops, entertainment and well equipped cabins. They are also the winner of the 'Which? British Travel Awards 2010' for 'Best Tour Operator to France' and the winner of the 'Which? Cross Channel Customer Satisfaction Survey July 2011', so you're unlikely to find a more enjoyable crossing to France.
When booking a Portsmouth to St Malo ferry crossing it is sometimes possible to save money by booking through an external agent, rather than direct with Brittany Ferries themselves. For example directferries.co.uk seem to be able to offer tickets for a few pounds cheaper a lot of the time, and it would also be worth checking ferrysavers.co.uk and aferry.co.uk for offers before making a booking, as you may be able to find significant discounts.