Shane Warne was better, he won matches for Australia against tougher sides.
Playing annoying devil's advocate, he never had to bowl against Australia at their peak either - not that Murali did all that much either, 12 wickets at 75.42. Of course the counter argument is Warne had to pick up the pieces once the aussie attack had helped themselves, Murali was the Sri Lankan attack more or less.
There's not much between them if you can look past the "Murali took 800 wickets" simplistic view.
vs ZIM/BAN/WIN/NZE
Muralitharan : 340 wkts @ 17.74 (SR 46.14)
Warne :185 wkts @ 26.46 (SR 57.79)
vs AUS/SRI/PAK/IND/ENG/SAF/ICC
Muralitharan : 460 wkts @ 26.41 (SR 61.63)
Warne : 523 wkts @ 25.05 (SR 57.39)
Hey look, Murali took a lot of cheap wickets against ordinary sides, well what do you know! 176 wickets @ 15.10 (SR 42.23) against Bangladesh and Zimbabwe alone, one either side of 88 against each while Warne bowled over 1000 overs LESS against the same two opponents (17 wickets @ 25.71)
And as to where they played, that also makes interesting comparison :
In India
Muralitharan : 40 wkts @ 45.45 (SR 86.23)
Warne : 34 wkts @ 43.12 (SR 81.03)
In Sri Lanka
Muralitharan : 493 wkts @ 19.57 (SR 50.83)
Warne : 48 wkts @ 20.46 (SR 39.67)
If only Warne had played 10 times as much cricket in Sri Lanka and gained the advantage of said advantage.
In AUS/ENG/SAF/ZIM/NZE/WIN
Muralitharan : 188 wkts @ 26.09 (SR 61.04)
Warne : 581 wkts @ 25.11 (SR 58.55)
Says it all for me, outside the Asian sub-continent Murali wasn't nearly as effective. 612 of his 800 wickets came there, over 75%. And home advantage, well Warne took 319 of his 708 wickets in Australia (45%) compared to 493 of Murali's 800 taken in Sri Lanka (62%)
Of course any averages are going to be skewed if you bowl 57% of your balls in home conditions which favour spin and top that up by playing the two sides who are weak and arguably should not have been playing Tests for much of the time Murali got to prey on them.