I have a object with properties that are expensive to compute, so they are only calculated on first access and then cached.
private List notes;
As far as syntax goes, you can use the null-coalescing operator if you want to be fancy, but it's not necessarily as readable.
get { return notes ?? (notes = CalcNotes()); }
Edit: Updated courtesy of Matthew. Also, I think the other answers are more helpful to the question asker!