For a cell phone, some already have call blocking, if not, there are free apps on the web that will work for some. You can google this. If you have a smart phone, there is a free app called call control. Iphones appear to have apps also. Another one is called Mr. Number.
For text messages: forwarding any text message spam you get to the short code “7726,” which spells “spam” on most phones, to alert your network operator to the abuse. ATT won't/may not accept 7726 But they will accept BLOCK and return a message that the web site is blocked. forward the texts to 7726 or BLOCK, depending on your phone carrier.
Report your callers here, not just to the DNC alone: