I have heard various opinions on how long a person should stick to a weightlifting routine before changing it up. Some have mentioned 8 weeks, others 12 weeks. How long should duration be? Also, should the routine be changed drastically? So can some of the staples of lifting like the flat bench press be kept in the routine?
Depends. You could still be progressing in your weight lifting routine (still able to add more weights) after 8 weeks depending on where you started. By 12 weeks, I would say that generally many people would be close to if not at the point of plateau after doing the same stuff that whole time.
My program changed every month (with 2 work-out routines that alternated) by increasing in duration, added work-outs, and increased difficulty variation of a previous exercise. There were some repeat exercises in there though. For me, it was nice changing every month because the exercises always felt "new" which helped my mental stamina a lot.
Bench press isn't the only way to target your chest muscles but if you like that exercise then keep it!
The change doesn't need to be drastic. You can change up your routine in many ways:
Ultimately, you will be able to tell when it's time to change it up. And if you are still feeling good, change it up when you want to.
If by "routine" you mean exercises, some exercises will almost always be applicable to your routine. Small modifications (as suggested by Rhea) can help ensure you target all muscles and maximize your Range Of Motion (ROM). Overall, however, power exercises like the bench press, squat, and deadlift can remain a vital piece of any routine.
If by "routine" you mean weight, sets, and reps, look into the concept of Periodization. Furthermore, the "Super-compensation effect". This is the key piece of information exercise physiologist use to ensure no "plateau".
Ideally, you want to alter your resistance every day, month, and year (microcycles, mesocycles, and macrocycles respectively); however, only slight changes should be made. It is important, for the sake of completeness, to further read on periodization before implementing it in your routine.
You should never do the same exact routine twice in a row. The first time you do any routine, let's assume you're muscles are 100% challenged. If you do the same routine the next time, your muscles will only be 90% challenged. The next time you do the same routine, your muscles will only be 81% challenged. Etc, etc.
On the other hand, if you do a different routine every single day, your muscles will always be challenged to the maximum. They can never get use to a given routine because it's constantly changing. This will stimulate your muscles to continually grow. There are enough exercises, enough different ways to do them, and enough different orders to do them in that you should be able to go for years and years without repeating a single routine.
Take your bench press for example. There is the flat bench, the incline bench, the decline bench, even the military press, and Arnold press. They all work the same muscle groups. Now add in wide grip, normal grip, and narrow grip. Do them with low weight and high reps or high weight and low reps. Add chains, use dumbells instead of the bar, throw in some 21's, etc. There are so many variations just to that basic exercise if you use a little imagination.
Don't repeat workouts, change it up and you'll constantly be challenging your muscles to grow.