This is quite broad.
- Blend state is used by the Output merger and you can configure it however you want to blend together outputs from a pixel shader and the render target or backbuffer.
- Depth stencil state is used if you have a depth stencil view bound to your rendertarget or backbuffer. You can configure it if you want depth or stencil test functionality.
- Rasterizer state describes the rasterizer fuctionality which occurs between primitive outputting shaders and pixel shaders and decides which pixels will be executed the pixels shader on.
- Sampler state is a texture sampler state which holds information how to sample a given texture resource.
You can usually create these by
ID3D11DeviceContext::CreateXYZState(state_description,state_pointer);
where XYZ is your 'Sampler', 'Rasterizer', etc., state_description is a D3D11_SAMPLER_DESC (or rasterizer, etc.) structure object's address which you fill in with the desired parameters.
state_pointer is the address of your state which you want to create.
You can use these states by enabling them before a draw call by calling the relevant method of the device context such as ID3D11DeviceContext::RSSetState(rasterizerstate); for example.
There is much more to this topic, you should try them out one by one to understand it completely.