Dealing with the "previous salary" question is always something I don't appreciate, for its awkwardness all around. Knowing that your answer will provide base for what they will offer to pay you, rather than allowing the base to form from what they believe the position is worth.
Technical questions were in broad topics, started with simple OO programming concepts, C# syntax and overall .NET technologies and went down to Linq and list management and newer C# syntax like what does ?? operator do.