If you only need to display the features you can use an ArcGISDynamicMapServiceLayer that is not impacted by the max records setting since it's just returning an image.
With a feature layer, one option is to use the 'OnDemand' mode so the features will be loaded using the current map extent as filter. However if you zoom out, you can't be sure that all features are loaded.
To get all features programmatically, you can't overcome the max records parameter. So you wont be able to get all features with one request only.
The workaround may be to execute multiple queries with different where clauses allowing to get all features at the end.
For example using a query by state (or another app field) if you know that the number of features by state is not greater than the max or ,more generic, using the objectID (sorting by object ID and each query having a where clause to return objectID > objectid of last graphic returned).