I have watched loads of ODI cricket and have major problems with it. It is monotonous, formulaic and basically gets boring after you have watched it forever. Except important matches, you aren't usually interested to watch it except in exceptional circumstances or when you have a general mood to watch the cricket and test cricket isn't on.
Twenty20 on the other hand, you have had a hard day's work, you go home, can get the satisfaction of watching a cricket match in it's entirety. It is like a movie versus the book which is test cricket. Nothing beats a good book but when you don't have the time, a movie can do.
Twenty20 is also not being deceptive. While one day cricket is neither here nor there, Twenty20 is unapologetic about being a short hit fest. You go to either your wife (test cricket) or the prostitute (Twenty20). Why go down the middle path. (No offence to Buddhists) One day cricket is neither here nor there.
A common misonception is that Twenty20 is just wham-bam-thankyou-mam type of cricket. In truth, you have to safeguard your wicket for a few overs. If you go to hit right from the outset, there is a danger of losing 2-4 quick wickets in the first few overs and being on the back foot sooner than you realise. Even in twenty overs, there are periods and you need to structure your innings. Every thing just happens faster but that doesn't mean that it is just slog-slog-slog.
So I prefer watching Twenty20 to one day cricket basically. Will be interested to know your views on it.