As you've already learned, XAML and WPF are separate, albeit complementary, technologies. As a result, it's quite possible to create a WPF application that doesn't use the faintest bit of XAML.
Altogether, there are three distinct coding styles that you can use to create a WPF application:
Code-only. This is the traditional approach used in Visual Studio for Windows Forms applications. It generates a user interface through code statements.
Code and uncompiled markup (XAML). This is a specialized approach that makes sense in certain scenarios where you need highly dynamic user interfaces. You load part of the user interface from a XAML file at runtime using the XamlReader class from the System.Windows.Markup namespace. ...