And of course I have dealed with OOP and used most of those features. You don't expect everyone to fall in love with OOP once (s)he has used it, do you?
An example: when you tell a C++ programmer that he must do something in C then he may be like "Oh my god what am I going to do now!?" - that's relying on a syntax (or a paradigm, as you say). Just an example - can be related to any programming language. BUT, a real programmer can program in any syntax/paradigm that (s)he is given, as long as it has no restrictions.
And that has been the whole point - procedural and object-oriented are different, but neither of them is better. It's like which one is better - apple or pear?