I would recommend two separate books in order to gain a greater
understanding on OOP using VB.NET. The first is "An Introduction to
Object-Oriented Programming with Visual Basic .NET" by Dan Clark from Apress
ISBN:1590590155. It is aimed at novice programmers, but whether or not you
have a solid understanding of VB.NET (which is kind of difficult without
understanding OOP), you will be able to benefit from this book.
The second text is " OOP: Building Reusable Components with Microsoft Visual
Basic .NET" by Ken Spencer, Tom Eberhard and John Alexander Microsoft Press
ISBN:0735613796. This book does a nice job is covering the concepts required
to build your own OOP components and helps the reader gain a better
understanding of what it means to be a productive OOP developer.
I'm sure there are other good books available on the topic, but these are
the two that come to mind.