I am gonna compare them as improved tiles, it's kind of pointless to compare them as unimproved tiles, since I would never work an unimproved desert or tundra unless my workers were way behind.
For non agricultural civs:
Until engineering, deserts and tundra are mostly equal, but desert is a little better because it is has two different ways it can be used.
Tundra mined and roaded = 1f 1s 1t
Desert mined and roaded = 0f 2s 1t
Desert irrigated and roaded = 1f 1s 1t.
So desert is better because you can use it in two different ways, either to get more food or get more sheilds.
After engineering but before steam power, Tundra is better, plain and simple.
Desert mined and roaded = 0f 2s 1t
Desert irrigated and roaded = 1f 1s 1t.
Tundra forested and roaded: 1f 2s 1t
After steam power, well it depends. A pure desert city is obviously way better than pure Tundra one, since with irrigation and railroads it can grow very well. But otherwise, it just depends if you want more food or more sheilds in that city. Normally you want food to at least grow the city so it can work all it's city radius tiles, but if you have a lot of extra food you might prefer the option to mine and railroad or forest and road.
In game I prefer desert in the steam power age, but before that I really dont like having to work desert tiles. I really dont mind working a forested Tundra before steam power.
Tundra forested and railroaded: 1f 2s 1t
Tundra mined and railroaded = 1f 2s 1t
Desert mined and railroaded = 0f 3s 1t
Desert irrigated and railroaded = 2f 1s 1t
For Agricultural civs desert is waaaaaaaaaaaaaay better.