Have you watched either at all?
Cricket: it's been a while since I followed it, but there are several levels. There is County Cricket, which pits different counties against each other (the County is the lowest professional level), the games last several days, and is followed mostly by the elderly and the unemployed (not really but those are the only people that can generally devote a day to following a game).
What is very popular is One Day cricket, which has an entire game played in one day, with each team bowling 40 (or 60, not sure) overs. An over is the delivery of 6 balls (like 6 pitches in baseball).
There is a more recent arrival called 20Twenty, which is a high powered version of this, with each team only bowling 20 overs and the emphasis is on offense.
All these formats relate to the international games as well, where the big money is. So you have England V Australia, India, Sri Lanka etc. A Test Match between nations takes 5 days to complete
Not really qualified to talk about rugby. There are two types - rugby league is concentrated in the north of England amongst the working class (and Australia), and rugby union is more of the Hooray Henry types but is massively more popular.
The big local competition is the European Cup, and there are two French teams in the final this year, which is being held in Dublin. Internationals are dominated by the southern hemisphere teams - New Zealand, Aus, Seth Efrica. There's a big competition in the northern hemisphere called the Six Nations, which includes the major rugby nations - Scotland, Wales, Ireland, England, France, Italy. Wales won that this year.
Edit: to answer your question, cricket is very popular at an international level, and rugby union is pretty popular at club level and massively popular at international level.