The deal is China's biggest energy agreement with one of the major Opec producers, the Chinese news agency Xinhuanet reported.
Under a memorandum of understanding signed on Thursday, Sinopec Group will buy 250 million tonnes of liquefied natural gas over 30 years from Iran and develop the giant Yadavaran field, said the news agency.
Iran is also committed to export 150,000 barrels per day of crude oil to China for 25 years at market prices after commissioning of the field.
Iran's oil minister, Bijan Zanganeh, who is on a two-day visit to Beijing to pursue closer ties, said Iran is China's biggest oil supplier and wants to be its long-term business partner.
Official figures show that China imported 226 million tonnes of oil in 2003, about 13% coming from Iran.
Beijing expects to secure foreign energy supplies to fuel its economy, which has turned China into a major oil importer. China continues to suffer severe power shortages.