OOP is a way to think about software. Some people never got used to OOP (the oldschool coders) and others just love the C-feeling of procedural code. I can understand this, because the C language is very easy to understand, yet powerfull (The same can be said about pascal because you can consider it a superset of C, functionality wise). The problem with OOP is that it restricts your way of thinking about your code. The constructs in OOP are flexible at the beginning, but as a project progresses, you may run into all kinds of problems. For example, if you heavily rely on complex things like polymorphism, generics or operator overloading, it will be very hard to understand what's going on.

About MVC, I think it has some good potential. For example, I'm working on a PHP web project, where I am using an MVC framework (KohanaPHP). I must say that for this kind of application, it works great.