NSolve is for (numerically) solving polynomial equations (as seen from the first description returned by ?NSolve). The given (original) equation is not a polynomial. Therefore we must resort to explicitly finding the roots as Frank has done with FindRoot. FindRoot is not restricted to polynomials, therefore it returns an answer.
Reading the posting again, I am not completely convinced of my answer above because NSolve[5.9x^0.5-x==1,x] returns a solution when the equality is not a polynomial per PolynomialQ[5.9x^0.5 - x].
Maybe someone else can explain better?