I would say that DryadLinq is the closest thing that us .Net folk have to Hadoop. But it depends what you want to use hadoop for. If you are looking for the optimized self maintaining distributed file (DFS) system than DraydLinq isnt what you are looking for. It has an analog to the DFS but you have to manually build the partitions and distribute each partition.
That being said, if its the distributed execution aspect of hadoop that you are looking for than draydLinq is truly wonderful (and no, i'm not affiliated with MS). As long as you have a Microsoft HPC cluster setup than getting going with dryadLinq is really easy.
The code you write is really just straight LINQ code, except instead of executing the LINQ on IEnumerable you have to execute it on PartitionedTable (the self build distributed data structure).
What has really been cool about DryadLinq is the fast turn around time (try, test, adjust, repeat) when developing algorithms. You just write LINQ code to do your calculations and DryadLinq will take care of the whole distributed execution part. Its the most natural analog i've come across that makes writing code for distributed processing just like writing code for single process processing