Firstly, I both love and hate WPF. I hated the grind of getting the foundations of my current project up and running, but once I had some momentum it was a real time saver. And the outcome is a nicer UI as well. As for performance with large sets of data, perhaps you can consider using a control that implements some sort of virtualization of it's rows. For example, the xCeed WPF grid can host 1000s of rows, but will only be consuming UI memory for those that are currently displayed (and maybe a buffer).
rjempo